Ejemplo n.º 1
0
        /// <summary>
        /// if current filter contains one of our items, then make sure we have
        /// a WordSetNullFilter() in our Filters, otherwise remove our WordSetNullFilter();
        /// We also make sure the current filter has a valid set of word references loaded.
        /// </summary>
        /// <param name="argument">current filter</param>
        /// <returns>true if handled.</returns>
        public override bool OnAdjustFilterSelection(object argument)
        {
            if (Filters.Count == 0)
            {
                return(false);                  // we aren't providing any items.
            }
            RecordFilter currentFilter = argument as RecordFilter;
            RecordFilter matchingFilter;

            if (ContainsOurFilter(currentFilter, out matchingFilter))
            {
                // we found a match. if we don't already have a WordSetNullFilter, add it now.
                if (!(Filters[0] is WordSetNullFilter))
                {
                    Filters.Insert(0, new WordSetNullFilter());
                }
                // make sure the current filter has a valid set of wordform references.
                WordSetFilter wordSetFilter = matchingFilter as WordSetFilter;
                wordSetFilter.ReloadWordSet(m_cache);
            }
            else if (Filters[0] is WordSetNullFilter)
            {
                // the current filter doesn't have one of our filters, so remove the WordSetNullFilter.
                Filters.RemoveAt(0);
            }

            // allow others to handle this message.
            return(false);
        }
Ejemplo n.º 2
0
        public void TestGetSalesReport()
        {
            var mockIXyzSalesService = new Mock <XyzSalesService>();

            RecordFilter recordFilter = new RecordFilter();

            recordFilter.RecordColumnFilter = ColumnFilter.State;

            List <XyzSaleRecord> records = new List <XyzSaleRecord>();

            records.Add(new XyzSaleRecord("Australia", "Victoria", "Melbourne", Convert.ToDateTime("2020/1/1"), 10));
            records.Add(new XyzSaleRecord("Australia", "Victoria", "Melbourne", Convert.ToDateTime("2020/2/1"), 20));
            records.Add(new XyzSaleRecord("Australia", "Victoria", "Melbourne", Convert.ToDateTime("2020/3/1"), 4));
            mockIXyzSalesService.Setup(M => M.GetSaleRecords()).Returns(records);
            mockIXyzSalesService.Setup(M => M.GetSalesReport(recordFilter)).CallBase();

            var xyzService = new XyzServiceTest(mockIXyzSalesService.Object);
            var data       = xyzService.GetSalesReport(recordFilter);

            //should be 2 column name
            Assert.AreEqual(2, data.columnNames.Count);
            //second column name should be state name
            Assert.AreEqual("Victoria", data.columnNames[1].title);

            // total data should be 7
            //Jan,Feb, March and Avg. Med and Total
            Assert.AreEqual(7, data.dataTable.Count);
        }
Ejemplo n.º 3
0
        public CheckRecordExistsOp DeepCloneWithRecordFilter(RecordFilter recordFilter)
        {
            var result = new CheckRecordExistsOp(
                this.StreamRepresentation?.DeepClone(),
                recordFilter);

            return(result);
        }
Ejemplo n.º 4
0
        public void MeetsCriteria_TypesMatch_DoesNotMeetCriteria()
        {
            var record       = String.Empty;
            var recordFilter = new RecordFilter <string>();

            var meetsCriteria = recordFilter.MeetsCriteria(record);

            Assert.IsTrue(meetsCriteria);
        }
Ejemplo n.º 5
0
        public void MeetsCriteria_TypesDoNotMatch_DoesNotMeetCriteria()
        {
            var record       = 0;
            var recordFilter = new RecordFilter <string>();

            var meetsCriteria = recordFilter.MeetsCriteria(record);

            Assert.IsFalse(meetsCriteria);
        }
        /// <summary>
        /// Initializes a new instance of the <see cref="CheckRecordExistsOp"/> class.
        /// </summary>
        /// <param name="streamRepresentation">The <see cref="IStreamRepresentation"/> to resolve the <see cref="IStream"/> to check handling on.</param>
        /// <param name="recordFilter">The filter for the records to examine.</param>
        public CheckRecordExistsOp(
            IStreamRepresentation streamRepresentation,
            RecordFilter recordFilter)
        {
            streamRepresentation.MustForArg(nameof(streamRepresentation)).NotBeNull();
            recordFilter.MustForArg(nameof(recordFilter)).NotBeNull();

            this.StreamRepresentation = streamRepresentation;
            this.RecordFilter         = recordFilter;
        }
Ejemplo n.º 7
0
        private Record GetRecord(string recordCustomId)
        {
            var recordFilter = new RecordFilter
            {
                customId = recordCustomId
            };
            ResultDataPaged <Record> page = this.recApi.SearchRecords(null, recordFilter, null, -1, -1, null, null, "addresses");

            return(page.Data.First());
        }
Ejemplo n.º 8
0
        public async Task <RecordFilterDto> AddRecordFilter(RecordFilterDto recordFilterDto)
        {
            var recordFilter = Mapper.Map <RecordFilter>(recordFilterDto);

            recordFilter.SetValuesBase();

            this._recordFilter = await _recordFilterAsyncRepository.AddAsync(recordFilter);

            return(Mapper.Map <RecordFilterDto>(this._recordFilter));
        }
        public CheckRecordHandlingOp DeepCloneWithRecordFilter(RecordFilter recordFilter)
        {
            var result = new CheckRecordHandlingOp(
                this.StreamRepresentation?.DeepClone(),
                this.Concern?.DeepClone(),
                recordFilter,
                this.HandlingFilter?.DeepClone());

            return(result);
        }
Ejemplo n.º 10
0
        public void Initialize(SoundIOSharp.SoundIODevice device, AudioFormat format)
        {
            InitSynthesizer(device, format);
            MidiOscillator = new Oscillator(Wave.CurrentState, 0, OscillatorVolume);
            Recorder       = new RecordFilter(Synthesizer);

            if (DebugPrint)
            {
                Console.WriteLine($"Initialized : {device.Name}, {format.SampleRate}Hz, {Output.ActualLatency.TotalMilliseconds}ms");
            }
        }
Ejemplo n.º 11
0
 private static void OutputOnBuffer(object?sender, OutputBufferEventArgs e)
 {
     if (Playing)
     {
         e.Buffer = RecordFilter.Next(e.Size);
     }
     else
     {
         e.Buffer = new float[e.Size];
     }
 }
        public RecordFilterEntry DeepCloneWithRecordFilter(RecordFilter recordFilter)
        {
            var result = new RecordFilterEntry(
                this.Id?.DeepClone(),
                this.StreamRepresentation?.DeepClone(),
                recordFilter,
                this.RequiredForReaction.DeepClone(),
                this.IncludeInReaction.DeepClone());

            return(result);
        }
Ejemplo n.º 13
0
        public ResultDataPaged <Record> SearchRecords(string token, RecordFilter filter, string fields = null, int offset = -1, int limit = -1, string sortField = null, string sortOrder = null, string expand = null)
        {
            try
            {
                // validate
                RequestValidator.ValidateToken(token);

                // create url
                StringBuilder url = new StringBuilder(apiUrl);
                url = url.Append(ConfigurationReader.GetValue("SearchRecords")).Replace("{limit}", limit.ToString()).Replace("{offset}", offset.ToString());
                if (fields != null)
                {
                    url.Append("&fields=").Append(fields);
                }
                if (this.language != null)
                {
                    url.Append("&lang=").Append(this.language);
                }
                if (sortField != null)
                {
                    url.Append("&sort=").Append(sortField);
                }
                if (sortOrder != null)
                {
                    url.Append("&direction=").Append(sortOrder);
                }
                if (expand != null)
                {
                    url.Append("&expand=").Append(expand);
                }

                RESTResponse   response       = HttpHelper.SendPostRequest(url.ToString(), filter, token, this.appId);
                PaginationInfo paginationInfo = null;

                // create response
                List <Record> records = new List <Record>();
                records = (List <Record>)HttpHelper.ConvertToSDKResponse(records, response, ref paginationInfo);
                ResultDataPaged <Record> results = new ResultDataPaged <Record> {
                    Data = records, PageInfo = paginationInfo
                };
                return(results);
            }
            catch (WebException webException)
            {
                throw new Exception(HttpHelper.HandleWebException(webException, "Error in Search Records :"));
            }
            catch (Exception exception)
            {
                throw new Exception(HttpHelper.HandleException(exception, "Error in Search Records :"));
            }
        }
Ejemplo n.º 14
0
        public void Start(RecordFilter filter)
        {
            var recorder = filter;

            if (recorder != null)
            {
                var path = Path.GetTempFileName();
                TempPath = path;

                var fs = new FileStream(path, FileMode.Create, FileAccess.Write);
                recorder.StartRecording(fs, true, false);
                Filter = filter;
            }
        }
Ejemplo n.º 15
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="filter"></param>
 /// <returns>True if one of our filters can be found in the given filter.</returns>
 private bool ContainsOurFilter(RecordFilter filter)
 {
     if (filter == null)
     {
         return(false);
     }
     for (int i = 0; i < Filters.Count; ++i)
     {
         if (filter.Contains(Filters[i] as RecordFilter))
         {
             return(true);
         }
     }
     return(false);
 }
Ejemplo n.º 16
0
        private void ApplyFilters()
        {
            var fl = this.FieldLayouts.FirstOrDefault();

            if (fl == null || fl.RecordFilters == null || !fl.RecordFilters.Any())
            {
                return;
            }

            //Infragistics.Windows.Controls.ComparisonCondition >
            var oldrf = new List <KeyValuePair <string, List <ICondition> > >();

            //Пересоздаем фильтры, т.к. старые перестают работать
            try
            {
                foreach (var fr in fl.RecordFilters)
                {
                    if (fr.Conditions == null || !fr.Conditions.Any())
                    {
                        continue;
                    }

                    oldrf.Add(new KeyValuePair <string, List <ICondition> >(fr.FieldName,
                                                                            fr.Conditions.Select(c => c).ToList()));
                }

                fl.RecordFilters.Clear();

                foreach (var fr in oldrf)
                {
                    var rf = new RecordFilter
                    {
                        FieldName = fr.Key,
                    };

                    foreach (var condition in fr.Value)
                    {
                        rf.Conditions.Add(condition);
                    }

                    fl.RecordFilters.Add(rf);
                }
            }
            catch
            {
                //TODO
            }
        }
Ejemplo n.º 17
0
        /// <summary>
        /// Initializes a new instance of the <see cref="CheckRecordHandlingOp"/> class.
        /// </summary>
        /// <param name="streamRepresentation">The <see cref="IStreamRepresentation"/> to resolve the <see cref="IStream"/> to check handling on.</param>
        /// <param name="concern">The concerns that require handling.</param>
        /// <param name="recordFilter">The filter for the records to examine.</param>
        /// <param name="handlingFilter">The filter for the handling entries to examine.</param>
        public CheckRecordHandlingOp(
            IStreamRepresentation streamRepresentation,
            string concern,
            RecordFilter recordFilter,
            HandlingFilter handlingFilter)
        {
            streamRepresentation.MustForArg(nameof(streamRepresentation)).NotBeNull();
            concern.MustForArg(nameof(concern)).NotBeNullNorWhiteSpace();
            recordFilter.MustForArg(nameof(recordFilter)).NotBeNull();
            handlingFilter.MustForArg(nameof(handlingFilter)).NotBeNull();

            this.StreamRepresentation = streamRepresentation;
            this.Concern        = concern;
            this.RecordFilter   = recordFilter;
            this.HandlingFilter = handlingFilter;
        }
Ejemplo n.º 18
0
        /// <summary>
        /// Initializes a new instance of the <see cref="RecordFilterEntry"/> class.
        /// </summary>
        /// <param name="id">The identifier of the entry.</param>
        /// <param name="streamRepresentation">The stream representation.</param>
        /// <param name="recordFilter">The record filter.</param>
        /// <param name="requiredForReaction">if set to <c>true</c> [required for reaction].</param>
        /// <param name="includeInReaction">if set to <c>true</c> [include in reaction].</param>
        public RecordFilterEntry(
            string id,
            IStreamRepresentation streamRepresentation,
            RecordFilter recordFilter,
            bool requiredForReaction,
            bool includeInReaction)
        {
            id.MustForArg(nameof(id)).NotBeNullNorWhiteSpace();
            streamRepresentation.MustForArg(nameof(streamRepresentation)).NotBeNull();
            recordFilter.MustForArg(nameof(recordFilter)).NotBeNull();

            this.Id = id;
            this.StreamRepresentation = streamRepresentation;
            this.RecordFilter         = recordFilter;
            this.RequiredForReaction  = requiredForReaction;
            this.IncludeInReaction    = includeInReaction;
        }
Ejemplo n.º 19
0
        public IncomingRequestsView(IncomingRequestsViewModel viewModel, IRegionManager regionManager, IEventAggregator eventAggregator, IFileManagerService fileManagerService)
            : base(regionManager, eventAggregator)
        {
            _fileManagerService = fileManagerService;
            InitializeComponent();
            DataContext = viewModel;
            if (GlobalAppProperties.User.RoleCurrent == Role.Admin || GlobalAppProperties.User.RoleCurrent == Role.Director)
            {
                var recordFilter = new RecordFilter {
                    FieldName = nameof(IncomingRequestLookup.HasAnyPerformer)
                };
                var condition = new ComparisonCondition(ComparisonOperator.Equals, false);
                recordFilter.Conditions.Add(condition);
                IncomingRequestsGrid.FieldLayouts.First().RecordFilters.Add(recordFilter);

                var recordFilter2 = new RecordFilter {
                    FieldName = nameof(IncomingRequest.IsActual)
                };
                var condition2 = new ComparisonCondition(ComparisonOperator.Equals, true);
                recordFilter2.Conditions.Add(condition2);
                IncomingRequestsGrid.FieldLayouts.First().RecordFilters.Add(recordFilter2);
            }

            if (GlobalAppProperties.User.RoleCurrent == Role.SalesManager)
            {
                var recordFilter = new RecordFilter {
                    FieldName = nameof(IncomingRequest.IsDone)
                };
                var condition = new ComparisonCondition(ComparisonOperator.Equals, false);
                recordFilter.Conditions.Add(condition);
                IncomingRequestsGrid.FieldLayouts.First().RecordFilters.Add(recordFilter);

                //скрываем колонки
                IncomingRequestsGrid.FieldLayouts.First().Fields
                .Single(x => x.Name == nameof(IncomingRequestLookup.HasAnyPerformer)).Visibility = Visibility.Collapsed;
            }

            viewModel.SelectedIncomingRequestChanged += request =>
            {
                if (request != null)
                {
                    _currentUri         = new Uri(_fileManagerService.GetPath(request.Document));
                    this.Browser.Source = _currentUri;
                }
            };
        }
Ejemplo n.º 20
0
        public RecordEnumeration EnumerateRecords(RecordFilter filter, RecordComparator comparator, bool keepUpdated)
        {
            CheckOpen("enumerateRecords");
            if (filter != null)
            {
                throw new Exception("enumerateRecords with RecordFilter Unimplemented");
            }
            if (comparator != null)
            {
                throw new Exception("enumerateRecords with RecordComparator Unimplemented");
            }
            if (keepUpdated)
            {
                throw new Exception("enumerateRecords with keepUpdated Unimplemented");
            }

            return(new RecordEnumerationImpl(records));
        }
Ejemplo n.º 21
0
        //获得输入值输出值
        public BaseResponse <IList <RecordFilter> > GetOutInt(int feeno, string recdate, string classtype)
        {
            var response = new BaseResponse <IList <RecordFilter> >();

            RecordFilter CrecordFilter = new RecordFilter();

            List <RecordFilter> FrecordFilter = new List <RecordFilter>();

            var times = Convert.ToDateTime(recdate).ToString("yyyy-MM-dd");

            StringBuilder sb  = new StringBuilder();
            string        sql = string.Format("select * from LTC_OUTVALUE as vs where  vs.FEENO='" + feeno + "'  and DATE_FORMAT(vs.RECDATE,'%Y-%m-%d')='" + times + "' and vs.CLASSTYPE='" + classtype + "' ORDER BY vs.RECDATE  asc  ");

            sb.Append(sql);

            StringBuilder sb1  = new StringBuilder();
            string        sql1 = string.Format("select * from LTC_INVALUE as vs where  vs.FEENO='" + feeno + "'  and DATE_FORMAT(vs.RECDATE,'%Y-%m-%d')='" + times + "' and vs.CLASSTYPE='" + classtype + "' ORDER BY vs.RECDATE  asc  ");

            sb1.Append(sql1);

            using (TWSLTCContext context = new TWSLTCContext())
            {
                var OutPut = context.Database.SqlQuery <OutValueModel>(sb.ToString()).ToList().FirstOrDefault();

                var IntPut = context.Database.SqlQuery <InValueModel>(sb1.ToString()).ToList().FirstOrDefault();

                if (OutPut != null)
                {
                    CrecordFilter.outvalue = Convert.ToInt32(OutPut.OutValue);
                }
                if (IntPut != null)
                {
                    CrecordFilter.intvalue = Convert.ToInt32(IntPut.InValue);
                }
            }

            FrecordFilter.Add(CrecordFilter);

            response.Data = FrecordFilter;


            return(response);
        }
Ejemplo n.º 22
0
        /// <summary>
        /// Handles changes to the FilterText property.
        /// </summary>
        private static void OnFilterTextChanged(DependencyObject d, DependencyPropertyChangedEventArgs e)
        {
            var dp = d as DataPresenterBase;

            if (dp?.DefaultFieldLayout != null)
            {
                dp.DefaultFieldLayout.RecordFilters.Clear();
                dp.DefaultFieldLayout.Settings.RecordFiltersLogicalOperator = LogicalOperator.Or;

                foreach (var field in dp.DefaultFieldLayout.Fields.Where(o => o.Name == "DisplayName"))
                {
                    var filter = new RecordFilter {
                        Field = field
                    };
                    filter.Conditions.Add(new ComparisonCondition(ComparisonOperator.Contains, e.NewValue));
                    dp.DefaultFieldLayout.RecordFilters.Add(filter);
                }
            }
        }
Ejemplo n.º 23
0
        private static void OnFilterValueChanged(DependencyObject d, DependencyPropertyChangedEventArgs e)
        {
            DataPresenterBase presenter   = (DataPresenterBase)d;
            string            filterValue = (string)e.NewValue;

            string[] filterByFields = ReadCsvs((string)presenter.GetValue(XamDataPresenterBase.FilterByFieldsProperty));

            //If the field layout is not initialized or the FilterByFields property is not set return.
            if (presenter.FieldLayouts.Count <= 0 || filterByFields.Length == 0)
            {
                return;
            }

            //Clear any exisitng filters
            presenter.FieldLayouts[0].RecordFilters.Clear();

            //If the filter is empty return
            if (string.IsNullOrEmpty(filterValue))
            {
                return;
            }

            //Make sure the filter action is Hide
            presenter.FieldLayoutSettings.FilterAction = RecordFilterAction.Default;
            presenter.FieldLayoutSettings.RecordFiltersLogicalOperator = LogicalOperator.Or;

            //Create the filters
            foreach (var fieldName in filterByFields)
            {
                ComparisonCondition condition = new ComparisonCondition();
                condition.Operator = ComparisonOperator.Contains;
                condition.Value    = filterValue;

                RecordFilter rFilter = new RecordFilter();
                rFilter.FieldName = fieldName;

                rFilter.Conditions.Add(condition);

                presenter.FieldLayouts[0].RecordFilters.Add(rFilter);
            }
        }
Ejemplo n.º 24
0
        public List <Permit> SearchPermits(PermitFilter filter)
        {
            var recordFilter = new RecordFilter();

            if (filter.PermitNumber != null)
            {
                recordFilter.customId = filter.PermitNumber;
            }
            else if (filter.Address != null)
            {
                Address   address       = new Address();
                UsAddress parsedAddress = this.ParseAddress(filter.Address);
                int       strNo;
                int.TryParse(parsedAddress.AddressNumber, out strNo);
                address.streetStart = strNo;
                address.streetName  = parsedAddress.StreetName;

                // address.xCoordinate = -82.458328247070312;
                // address.yCoordinate = 27.938003540039063;
                recordFilter.address = address;
            }

            ResultDataPaged <Record> page = this.recApi.SearchRecords(null, recordFilter, null, 0, 1000, null, null, "addresses");

            var result = new List <Permit>();

            if (page.Data != null)
            {
                foreach (var record in page.Data)
                {
                    Permit permit = this.ToPermit(record);
                    result.Add(permit);
                }
            }

            return(result);
        }
Ejemplo n.º 25
0
        private IndexModel GetModel(IndexModel indexModel)
        {
            ColumnFilter _columnFilter = ColumnFilter.State;
            RowFilter    _rowFilter    = RowFilter.Month;

            RecordFilter recordFilter = new RecordFilter();

            if (indexModel is not null)
            {
                if (!string.IsNullOrWhiteSpace(indexModel.ColumnFilter))
                {
                    Enum.TryParse(indexModel.ColumnFilter, out _columnFilter);
                }

                if (!string.IsNullOrWhiteSpace(indexModel.RowFilter))
                {
                    Enum.TryParse(indexModel.RowFilter, out _rowFilter);
                }

                if (indexModel.RowFilterValue.HasValue && indexModel.RowFilterValue.Value > 0)
                {
                    recordFilter.RowFilterValue = indexModel.RowFilterValue;
                }

                recordFilter.RecordColumnFilter = _columnFilter;
                recordFilter.RecordRowFilter    = _rowFilter;
            }

            IXyzSalesService service = new XyzSalesService();
            var data = service.GetSalesReport(recordFilter);

            indexModel = new IndexModel {
                DataColumn = JsonSerializer.Serialize(data.columnNames), DataTable = JsonSerializer.Serialize(data.dataTable.Values)
            };

            return(indexModel);
        }
Ejemplo n.º 26
0
        internal void AddNewFilter(RecordFilter filter)
        {
            var line = new RecordFilterViewModel(filter);

            line.DeleteCommand = new RelayCommand(() =>
            {
                _Filters.Remove(line);
                Group.Filters.Remove(line.Filter);
            });

            _Filters.Add(line);
        }
Ejemplo n.º 27
0
        protected override void SetupDataContext()
        {
            base.SetupDataContext();
            // Make sure our persisted sorter/filters are up to date so browse viewer
            // has the latest set for configuring/activating the filterBar
            bool fNeedReload = Clerk.UpdateFiltersAndSortersIfNeeded();
            // This is mainly to handle the possibility that one of our objects in a virtual
            // property has been deleted, either by some other tool, or by another client altogether.
            // Enhance: it would be very nice not to do this any time we can be sure it isn't needed.

            // The second 'true' here is to make it skip the sort.  The sort has to be skipped at this
            // point because our VC has been disposed, and we haven't made a new one yet.  The sort
            // will happen later in the sequence of Init when InitSorter is called

            int hvo = 0;

            if (Clerk.OwningObject != null)
            {
                hvo = Clerk.OwningObject.Hvo;
            }
            // We must update the list if needed BEFORE we create the actual view, otherwise, if it is trying
            // to display an out-of-date list containing deleted objects, all kinds of things may go wrong.
            if (XmlUtils.GetOptionalBooleanAttributeValue(m_configurationParameters, "forceReloadListOnInitOrChangeRoot", false))
            {
                m_propertyTable.SetProperty(Clerk.Id + "_AlwaysRecomputeVirtualOnReloadList", true, true);
                // (EricP) when called by RecordView.InitBase() in the context of ListUpdateHelper.ClearBrowseListUntilReload
                // the list does not get reloaded until ListUpdateHelper is disposed, but the views property
                // will get cleared to prevent these views from accessing invalid objects.
                Clerk.UpdateList(false, true);
            }

            m_browseViewer = CreateBrowseViewer(m_configurationParameters, hvo, m_fakeFlid, Cache,
                                                m_mediator, m_propertyTable,
                                                Clerk.SortItemProvider, Clerk.VirtualListPublisher);
            m_browseViewer.SortersCompatible += Clerk.AreSortersCompatible;
            // If possible make it use the style sheet appropriate for its main window.
            m_browseViewer.SuspendLayout();
            SetStyleSheet();
            m_browseViewer.Dock = DockStyle.Fill;
            RecordFilter linkFilter = m_browseViewer.FilterFromLink();

            SetupLinkScripture();
            if (linkFilter != null)
            {
                Clerk.OnChangeFilter(new FilterChangeEventArgs(linkFilter, Clerk.Filter));
            }
            if (Clerk.Filter != null && !Clerk.Filter.IsValid)
            {
                Clerk.ResetFilterToDefault();
            }
            m_browseViewer.UpdateFilterBar(Clerk.Filter);
            bool fSortChanged = m_browseViewer.InitSorter(Clerk.Sorter);             // true if we had to change sorter

            // Do this AFTER we init the sorter and filter, so if any changes are made to the
            // sorter or filter as we install, we still get the right load.
            if (fSortChanged)
            {
                HandleSortChange();
                // Keep the current index -- see LT-8755.
            }
            else
            {
                List <int> sortedCols = m_browseViewer.SortedColumns;
                Clerk.IsDefaultSort = sortedCols.Count > 0 && sortedCols[0] == m_browseViewer.DefaultSortColumn;
                // This won't actually load if in the context of UpdateListHelper()
                Clerk.UpdateList(true, fNeedReload);
            }
            // Do this very late, it can't display properly until its record list has been built and sorted.
            Controls.Add(m_browseViewer);
            m_browseViewer.BringToFront();
            m_browseViewer.ResumeLayout();
        }
Ejemplo n.º 28
0
        static void Main(string[] args)
        {
            var output = new SoundioOutput();

            for (var i = 0; i < output.Devices.Count; i++)
            {
                Console.WriteLine($"[{i}] {output.Devices[i].Name}");
            }

            Console.Write("Device Index > ");
            var outputIndex = int.Parse(Console.ReadLine());

            Console.Write("Latency(ms) > ");
            var intervalMs = Double.Parse(Console.ReadLine());

            output.DesiredLatency = TimeSpan.FromMilliseconds(intervalMs);
            output.Initialize(output.Devices[outputIndex], new AudioFormat(48000, 1, 16));
            Output = output;
            Console.WriteLine("Output device initialized");
            Console.WriteLine($"Actual Latency : {output.ActualLatency.TotalMilliseconds}ms");

            Source = new PeriodicFunctionsSource(output.Format.SampleRate)
            {
                Function = FunctionType.Sin,
                Volume   = 1,
            };

            var midi = new MidiPlayer(output.Format.SampleRate, new Synthesizer(output.Format.SampleRate));

            midi.OscillatorConfigs.Add(new Oscillator()
            {
                Function = KSynthesizer.Sources.FunctionType.Sin, Volume = 0.3f
            });
            midi.Open(MidiFile.Read("sample.mid"));

            Source.SetFrequency(Frequency);
            RecordFilter = new RecordFilter(midi);

            Output.Buffer += OutputOnBuffer;
            Output.Play();
            Console.WriteLine("Player started");

            bool exit = false;

            while (!exit)
            {
                var key = Console.ReadKey();
                Console.WriteLine();
                switch (key.Key)
                {
                case ConsoleKey.P:
                    Playing = !Playing;
                    Console.WriteLine(Playing ? "Resumed" : "Paused");
                    break;

                case ConsoleKey.R:
                    if (RecordFilter.IsRecording)
                    {
                        RecordFilter.StopRecording();
                    }
                    else
                    {
                        var now  = DateTime.Now;
                        var name = $"{now.Ticks}.wav";
                        RecordFilter.StartRecording(new FileStream(name, FileMode.Create, FileAccess.Write), true, false);
                        Console.WriteLine("Output : " + name);
                    }
                    Console.WriteLine(RecordFilter.IsRecording ? "Recording Started" : "Recording Stopped");
                    break;

                case ConsoleKey.UpArrow:
                    Frequency += 100;
                    Source.SetFrequency(Frequency);
                    Console.WriteLine($"Frequency : {Frequency}Hz");
                    break;

                case ConsoleKey.DownArrow:
                    Frequency -= 100;
                    if (Frequency <= 300)
                    {
                        Frequency = 300;
                    }
                    Source.SetFrequency(Frequency);
                    Console.WriteLine($"Frequency : {Frequency}Hz");
                    break;

                case ConsoleKey.Escape:
                    exit = true;
                    break;

                default:
                    Console.WriteLine("Unknown Key");
                    break;
                }
            }

            output.Dispose();
            Console.WriteLine("Exited");
        }
Ejemplo n.º 29
0
 public RecordFilterViewModel(RecordFilter filter)
 {
     Filter = filter;
 }
Ejemplo n.º 30
0
 /// <summary>
 /// Test to see if this filter matches the other filter.
 /// </summary>
 /// <param name="other"></param>
 /// <returns></returns>
 public override bool SameFilter(RecordFilter other)
 {
     return(other != null && other is WordSetFilter &&
            other.id == this.id && other.Name == this.Name);
 }
 private Record GetRecord(string recordCustomId)
 {
     var recordFilter = new RecordFilter
     {
         customId = recordCustomId
     };
     ResultDataPaged<Record> page = this.recApi.SearchRecords(null, recordFilter, null, -1, -1, null, null, "addresses");
     return page.Data.First();
 }
Ejemplo n.º 32
0
        //获取是否存在的管路

        public BaseResponse <IList <RecordFilter> > GetNurseDailyReportpipe(int feeno)
        {
            var response = new BaseResponse <IList <RecordFilter> >();

            RecordFilter CrecordFilter = new RecordFilter();

            List <RecordFilter> FrecordFilter = new List <RecordFilter>();

            var q = from pp in unitOfWork.GetRepository <LTC_PIPELINEREC>().dbSet
                    join e in unitOfWork.GetRepository <LTC_PIPELINEEVAL>().dbSet on pp.SEQNO equals e.SEQNO into res
                    from em in res.DefaultIfEmpty()
                    select new
            {
                FEENO        = pp.FEENO,
                REMOVEDFLAG  = pp.REMOVEDFLAG,
                RECENTDATE   = em.RECENTDATE,
                PIPELINENAME = pp.PIPELINENAME
            };

            if (feeno > 0)
            {
                q = q.Where(p => p.FEENO == feeno);
            }

            q = q.Where(p => p.REMOVEDFLAG != true);
            //q = q.Where(p => p.RECENTDATE == Convert.ToDateTime(np.RECDATE).ToString("yyyy-MM-dd"));
            //q = q.OrderBy(p => p.RECENTDATE);


            var list = q.ToList();


            for (int i = 0; i < list.Count; i++)
            {
                if (list[i].PIPELINENAME == "001")
                {
                    CrecordFilter.CATHETER = true;
                }
                else
                {
                    CrecordFilter.CATHETER = false;
                }
                if (list[i].PIPELINENAME == "002")
                {
                    CrecordFilter.TRACHEOSTOMY = true;
                }
                else
                {
                    CrecordFilter.TRACHEOSTOMY = false;
                }
                if (list[i].PIPELINENAME == "003")
                {
                    CrecordFilter.NASOGASTRIC = true;
                }
                else
                {
                    CrecordFilter.NASOGASTRIC = false;
                }
            }

            FrecordFilter.Add(CrecordFilter);

            response.Data = FrecordFilter;


            return(response);
        }
Ejemplo n.º 33
0
        public RecordEnumeration EnumerateRecords(RecordFilter filter, RecordComparator comparator, bool keepUpdated)
        {
            CheckOpen("enumerateRecords");
            if (filter != null)
            {
                throw new Exception("enumerateRecords with RecordFilter Unimplemented");
            }
            if (comparator != null)
            {
                throw new Exception("enumerateRecords with RecordComparator Unimplemented");
            }
            if (keepUpdated)
            {
                throw new Exception("enumerateRecords with keepUpdated Unimplemented");
            }

            return new RecordEnumerationImpl(records);
        }
Ejemplo n.º 34
0
 /// <summary>
 /// Add journals for investment gains to data
 /// </summary>
 /// <param name="period">Start and end of period over which to calculate gains</param>
 /// <param name="account">Accounts to include</param>
 /// <param name="data">Exdisting list of journals</param>
 /// <returns>List with gain journals added</returns>
 List<JObject> addInvestmentGains(DateTime [] period, RecordFilter account, List<JObject> data)
 {
     // Current values of stock for each account id
     Dictionary<int, decimal> stockValues = new Dictionary<int, decimal>();
     // Get values for each stock at start of period
     foreach (Investments.SecurityValue securityValue in Database.Query<Investments.SecurityValue>(Investments.SecurityValues(period[0].AddDays(-1)))) {
         JObject jnl = data.FirstOrDefault(a => a.AsInt("idAccount") == securityValue.ParentAccountId && a.AsInt("DocumentTypeId") == (int)DocType.OpeningBalance);
         if (jnl == null)
             continue;		// No opening balance, so not wanted
         decimal gain = securityValue.Value;
         stockValues[(int)securityValue.AccountId] = securityValue.Value;	// Save value at start of period
         jnl["Amount"] = jnl.AsDecimal("Amount") + gain;		// Add to the opening balance
     }
     // Now get values at end of period
     foreach (Investments.SecurityValueWithName securityValue in Database.Query<Investments.SecurityValueWithName>(
         "SELECT * FROM (" + Investments.SecurityValues(period[1].AddDays(-1)) + @") AS SV
     JOIN Security ON idSecurity = SecurityId")) {
         decimal gain = 0;
         int ind;
         stockValues.TryGetValue((int)securityValue.AccountId, out gain);
         gain = securityValue.Value - gain;	// Gain is difference between start and end of period values
         JObject jnl = data.LastOrDefault(a => a.AsInt("idAccount") == securityValue.ParentAccountId);
         if (jnl != null && gain != 0) {
             // Add extra journal for parent account
             ind = data.IndexOf(jnl);
             jnl = newJournal(new JObject(jnl), gain, gain < 0, securityValue.SecurityName, period);
             data.Insert(ind + 1, jnl);
         }
         jnl = data.LastOrDefault(a => a.AsInt("idAccount") == securityValue.AccountId && a.AsInt("DocumentTypeId") == (int)DocType.Gain);
         if (jnl != null) {
             if (gain == 0) {
                 data.Remove(jnl);
             } else {
                 jnl["AccountId"] = securityValue.AccountId;
                 if (account.Active && !account.Test(jnl))
                     continue;
                 // Add extra journal for gain
                 newJournal(jnl, -gain, gain < 0, securityValue.SecurityName, period);
             }
         }
     }
     return data;
 }
Ejemplo n.º 35
0
 public object JournalsPost(JObject json)
 {
     initialiseReport(json);
     addTable("AccountType");
     fieldFor("idAccountType").Hide().Essential = false;
     addTable("Account", "idAccount", "AccountCode", "AccountName", "AccountDescription");
     addTable("!Journal");
     addTable("!NameAddress");
     addTable("Document", "idDocument", "DocumentDate", "DocumentIdentifier", "DocumentTypeId");
     fieldFor("idDocument").MakeEssential()["heading"] = "Trans no";
     addTable("DocumentType", "DocType");
     fieldFor("DocumentIdentifier")["heading"] = "Doc Id";
     fieldFor("DocumentDate").FullFieldName = "rDocDate AS DocumentDate";
     fieldFor("DocumentTypeId").MakeEssential().Hide().FullFieldName = "rDocType AS DocumentTypeId";
     fieldFor("Amount").FullFieldName = "Result.Amount";
     fieldFor("Credit").FullFieldName = "Result.Amount";
     fieldFor("Debit").FullFieldName = "Result.Amount";
     fieldFor("idAccount").Hide().Essential = true;
     DateFilter date = new DateFilter("DocumentDate", DateRange.ThisMonth);
     RecordFilter account = new RecordFilter("Account", "Journal.AccountId", _sel.Account(""));
     date.Apply = false;
     account.Apply = false;
     _filters.Add(date);
     _filters.Add(account);
     _filters.Add(new StringFilter("Id", "DocumentIdentifier"));
     _filters.Add(new RecordFilter("DocumentType", "DocumentTypeId", _sel.DocumentType("")));
     _filters.Add(new RecordFilter("NameAddress", "Journal.NameAddressId", _sel.Name("")));
     _filters.Add(new DecimalFilter("JournalAmount", "Result.Amount"));
     _filters.Add(new StringFilter("Memo", "Journal.Memo"));
     _sortOrder = "idAccountType,AcctType,AccountName";
     makeSortable("idAccountType,AcctType,AccountCode,AccountName=Account Type", "AccountName", "AccountCode,AccountName=AccountCode", "Name", "DocumentDate", "DocumentIdentifier=Doc Id", "DocType");
     setDefaultFields(json, "AcctType", "AccountName", "Amount", "Memo", "Name", "DocType", "DocumentDate", "DocumentIdentifier");
     setFilters(json);	// we need account filter now!
     string where = account.Active ? "\r\nAND " + account.Where() : "";
     // Need opening balance before start of period
     // Journals in period
     // Security gains/losses
     List<JObject> report = finishReport(@"(
     SELECT * FROM
     (SELECT Account.idAccount AS rAccount, Account.AccountTypeId as rAcctType, SUM(Journal.Amount) AS Amount, " + (int)DocType.OpeningBalance + " AS rDocType, 0 as rJournal, 0 as rDocument, 0 AS rJournalNum, "
     + Database.Cast(Database.Quote(date.CurrentPeriod()[0]), "DATETIME") + @" AS rDocDate
     FROM Account
     LEFT JOIN AccountType ON AccountType.idAccountType = Account.AccountTypeId
     LEFT JOIN Journal ON Journal.AccountId = Account.idAccount
     LEFT JOIN Document ON Document.idDocument = Journal.DocumentId
     WHERE DocumentDate < " + Database.Quote(date.CurrentPeriod()[0]) + @"
     AND BalanceSheet = 1" + where + @"
     GROUP BY AccountName) AS OpeningBalances
     WHERE Amount <> 0 OR rAcctType IN (" + (int)AcctType.Investment + "," + (int)AcctType.Security + @")
     UNION
     SELECT Account.idAccount AS rAccount, Account.AccountTypeId as rAcctType, Journal.Amount, DocumentTypeId As rDocType, idJournal AS rJournal, idDocument as rDocument,
     JournalNum as rJournal, DocumentDate AS rDocDate
     FROM Account
     LEFT JOIN AccountType ON AccountType.idAccountType = Account.AccountTypeId
     LEFT JOIN Journal ON Journal.AccountId = Account.idAccount
     LEFT JOIN Document ON Document.idDocument = Journal.DocumentId
     WHERE " + date.Where() + where + @"
     UNION
     SELECT Account.idAccount AS rAccount, Account.AccountTypeId as rAcctType, 0 AS Amount, " + (int)DocType.Gain + " AS rDocType, 0 as rJournal, 0 as rDocument, 0 AS rJournalNum, "
     + Database.Cast(Database.Quote(date.CurrentPeriod()[1].AddDays(-1)), "DATETIME") + @" AS rDocDate
     FROM Account
     WHERE AccountTypeId = " + (int)AcctType.Security + where.Replace("Journal.AccountId", "idAccount") + @"
     ) AS Result", "idAccountType,AccountName,DocumentDate,idDocument,JournalNum", @"
     LEFT JOIN Account on Account.idAccount = rAccount
     LEFT JOIN AccountType ON AccountType.idAccountType = Account.AccountTypeId
     LEFT JOIN Journal ON Journal.idJournal = rJournal
     LEFT JOIN NameAddress ON NameAddress.idNameAddress = Journal.NameAddressId
     LEFT JOIN Document ON Document.idDocument = rDocument
     LEFT JOIN DocumentType ON DocumentType.idDocumentType = rDocType
     ", json).ToList();
     return reportJson(json, addInvestmentGains(date.CurrentPeriod(), account, report), "Account", "AccountType");
 }
Ejemplo n.º 36
0
        internal void AddNewFilter()
        {
            var filter = new RecordFilter();
            filter.Initialize(_BaseType);

            AddNewFilter(filter);
            Group.Filters.Add(filter);
        }
        public List<Permit> SearchPermits(PermitFilter filter)
        {
            var recordFilter = new RecordFilter();

            if (filter.PermitNumber != null)
            {
                recordFilter.customId = filter.PermitNumber;
            }
            else if (filter.Address != null)
            {
                Address address = new Address();
                UsAddress parsedAddress = this.ParseAddress(filter.Address);
                int strNo;
                int.TryParse(parsedAddress.AddressNumber, out strNo);
                address.streetStart = strNo;
                address.streetName = parsedAddress.StreetName;
                
                // address.xCoordinate = -82.458328247070312;
                // address.yCoordinate = 27.938003540039063;
                recordFilter.address = address;
            }

            ResultDataPaged<Record> page = this.recApi.SearchRecords(null, recordFilter, null, 0, 1000, null, null, "addresses");

            var result = new List<Permit>();
            if (page.Data != null)
            {
                foreach (var record in page.Data)
                {
                    Permit permit = this.ToPermit(record);
                    result.Add(permit);
                }
            }

            return result;
        }
Ejemplo n.º 38
0
 public void UsesPredicateToFilterRecords()
 {
     var filter = new RecordFilter(record => record[0] == "A");
     Assert.That(filter.ShouldPass(new Record(new string[] { "A", "B", "C" })), Is.True);
     Assert.That(filter.ShouldPass(new Record(new string[] { "X", "Y", "Z" })), Is.False);
 }
        private RecordFilterConvertedForStoredProcedure ConvertRecordFilter(
            RecordFilter recordFilter,
            SqlServerLocator sqlServerLocator)
        {
            recordFilter.TagMatchStrategy
            .MustForArg(Invariant($"{nameof(recordFilter)}.{nameof(recordFilter.TagMatchStrategy)}"))
            .BeEqualTo(TagMatchStrategy.RecordContainsAllQueryTags, "Currently only supported tag strategy.");

            var internalRecordIdsCsv = (recordFilter.InternalRecordIds ?? new List <long>())
                                       .Select(_ => _.ToStringInvariantPreferred())
                                       .ToCsv();

            var tagIdsCsv = this.GetIdsAddIfNecessaryTag(
                sqlServerLocator,
                recordFilter.Tags ?? new List <NamedValue <string> >())
                            .Select(_ => _.ToStringInvariantPreferred())
                            .ToCsv();

            var distinctIdentifierTypes = (recordFilter.Ids ?? new List <StringSerializedIdentifier>())
                                          .Select(_ => _.IdentifierType)
                                          .Distinct()
                                          .ToList();

            var typeToIdMap = distinctIdentifierTypes.ToDictionary(
                k => k,
                v => this.GetIdsAddIfNecessaryType(sqlServerLocator, v.ToWithAndWithoutVersion()));

            var identifierTypes = (recordFilter.IdTypes ?? new List <TypeRepresentation>())
                                  .Select(_ => this.GetIdsAddIfNecessaryType(sqlServerLocator, _.ToWithAndWithoutVersion()))
                                  .ToList();
            var identifierTypeIdsCsv = identifierTypes
                                       .Select(
                _ =>
                recordFilter.VersionMatchStrategy == VersionMatchStrategy.Any
                                               ? _.IdWithoutVersion.ToStringInvariantPreferred()
                                               : _.IdWithVersion.ToStringInvariantPreferred())
                                       .ToCsv();

            var objectTypes = (recordFilter.ObjectTypes ?? new List <TypeRepresentation>())
                              .Select(_ => this.GetIdsAddIfNecessaryType(sqlServerLocator, _.ToWithAndWithoutVersion()))
                              .ToList();
            var objectTypeIdsCsv = objectTypes
                                   .Select(
                _ =>
                recordFilter.VersionMatchStrategy == VersionMatchStrategy.Any
                                               ? _.IdWithoutVersion.ToStringInvariantPreferred()
                                               : _.IdWithVersion.ToStringInvariantPreferred())
                                   .ToCsv();

            var deprecatedIdTypes = (recordFilter.DeprecatedIdTypes ?? new List <TypeRepresentation>())
                                    .Select(_ => this.GetIdsAddIfNecessaryType(sqlServerLocator, _.ToWithAndWithoutVersion()))
                                    .ToList();
            var deprecatedIdTypeIdsCsv = deprecatedIdTypes
                                         .Select(
                _ =>
                recordFilter.VersionMatchStrategy == VersionMatchStrategy.Any
                                               ? _.IdWithoutVersion.ToStringInvariantPreferred()
                                               : _.IdWithVersion.ToStringInvariantPreferred())
                                         .ToCsv();

            var stringIdsToMatchXml =
                (recordFilter.Ids ?? new List <StringSerializedIdentifier>())
                .Select(
                    _ => new NamedValue <int>(
                        _.StringSerializedId,
                        recordFilter.VersionMatchStrategy == VersionMatchStrategy.Any
                            ? typeToIdMap[_.IdentifierType].IdWithoutVersion
                            : typeToIdMap[_.IdentifierType].IdWithVersion))
                .ToList()
                .GetTagsXmlString();

            var result = new RecordFilterConvertedForStoredProcedure(
                internalRecordIdsCsv,
                identifierTypeIdsCsv,
                objectTypeIdsCsv,
                stringIdsToMatchXml,
                tagIdsCsv,
                recordFilter.TagMatchStrategy,
                recordFilter.VersionMatchStrategy,
                deprecatedIdTypeIdsCsv);

            return(result);
        }
Ejemplo n.º 40
0
 public object AgeingPost(JObject json)
 {
     initialiseReport(json);
     // Can select Sales or Purchases
     JObject [] accountSelect = new JObject[] {
         new JObject().AddRange("id", (int)Acct.SalesLedger, "value", "Sales Ledger"),
         new JObject().AddRange("id", (int)Acct.PurchaseLedger, "value", "Purchase Ledger")
     };
     ReportField acct = new ReportField("AccountId", "select", "Account");
     acct["selectOptions"] = new JArray(accountSelect);
     acct.Essential = true;
     _fields.Add(acct);
     _fields.Add(new ReportField("NameAddressId", "int", "NameAddressId").Hide().MakeEssential());
     _fields.Add(new ReportField("Name", "string", "Name"));
     // Fields for each ageing bucket
     _fields.Add(new ReportField("SUM(CASE WHEN age BETWEEN 0 AND 29 THEN Outstanding ELSE 0 END) AS Current", "decimal", "Current"));
     for(int i = 1; i < 90; i += 30)
         _fields.Add(new ReportField("SUM(CASE WHEN age BETWEEN " + (i + 29) + " AND " + (i + 58) + " THEN Outstanding ELSE 0 END) AS b" + i, "decimal", i + "-" + (i + 29)));
     _fields.Add(new ReportField("SUM(CASE WHEN age > 120 THEN Outstanding ELSE 0 END) AS old", "decimal", ">90"));
     _fields.Add(new ReportField("SUM(Outstanding) AS Total", "decimal", "Total"));
     RecordFilter account = new RecordFilter("Account", "Journal.AccountId", accountSelect);
     account.Apply = false;
     _filters.Add(account);
     _sortOrder = "";
     _total = true;
     setDefaultFields(json, "AccountId", "Name", "Current", "b1", "b31", "b61", "old", "Total");
     setFilters(json);	// we account filter value setting now
     string where = account.Active ? account.Where() : "AccountId IN (1, 2)";
     return finishReport(json, @"(SELECT AccountId, NameAddressId, Name, Outstanding,
     DATEDIFF(" + Database.Quote(Utils.Today) + @", DocumentDate) AS age
     FROM Journal
     JOIN Document ON idDocument = DocumentId
     JOIN NameAddress ON idNameAddress = NameAddressId
     WHERE " + where + @"
     AND Outstanding <> 0
     ) AS DaysDue", "AccountId,Name",
      "GROUP BY AccountId, Name");
 }