Пример #1
0
        public DocumntsFlowWindow(AccDocumentItemDTO sender, string state)
        {
            InitializeComponent();
            //var _uow = SmObjectFactory.Container.GetInstance<SainaDbContext>();
            //gridViewGrid.DataContext = new VirtualQueryableCollectionView(ctx.DocItems.OrderBy(x => x.Id)) { LoadSize = 10 };
            Loaded += (s, e) =>
            {
                accDocumentItemsGridView.IsBusy = true;
                var _uow = SmObjectFactory.Container.GetInstance <SainaDbContext>();

                switch (state)
                {
                case "OnGLGrouped":
                case "OnGLDetailed":
                    var cc = _uow.AccDocumentItems
                             .Where(x => x.SL.TL.GL.GLId == sender.Id)
                             .OrderBy(x => x.AccDocumentHeaderId);
                    DataContext = new VirtualQueryableCollectionView(_uow.AccDocumentItems
                                                                     .Where(x => x.SL.TL.GL.GLId == sender.Id)
                                                                     .OrderBy(x => x.AccDocumentHeaderId))
                    {
                        LoadSize = 10
                    };
                    break;

                case "OnTLGrouped":
                case "OnTLDetailed":
                    DataContext = new VirtualQueryableCollectionView(_uow.AccDocumentItems
                                                                     .Where(x => x.SL.TLId == sender.Id)
                                                                     .OrderBy(x => x.AccDocumentHeaderId))
                    {
                        LoadSize = 10
                    };
                    break;

                case "OnSLGrouped":
                case "OnSLDetailed":
                    accDocumentItemsGridView.DataContext = new VirtualQueryableCollectionView(_uow.AccDocumentItems
                                                                                              .OrderBy(x => x.AccDocumentHeaderId)
                                                                                              .Where(x => x.SLId == sender.Id)
                                                                                              )
                    {
                        LoadSize = 10
                    };
                    break;

                case "OnDL1Grouped":
                case "OnDL1Detailed":
                    DataContext = new VirtualQueryableCollectionView(_uow.AccDocumentItems
                                                                     .Where(x => x.SL.SLCode == sender.Code)
                                                                     .OrderBy(x => x.AccDocumentHeaderId))
                    {
                        LoadSize = 10
                    };
                    break;

                case "OnDL2Grouped":
                case "OnDL2Detailed":
                    DataContext = new VirtualQueryableCollectionView(_uow.AccDocumentItems
                                                                     .Where(x => x.SL.SLCode == sender.Code)
                                                                     .OrderBy(x => x.AccDocumentHeaderId))
                    {
                        LoadSize = 10
                    };
                    break;

                case "OnCurrencyGrouped":
                case "OnCurrencyDetailed":
                    DataContext = new VirtualQueryableCollectionView(_uow.AccDocumentItems
                                                                     .Where(x => x.SL.SLCode == sender.Code)
                                                                     .OrderBy(x => x.AccDocumentHeaderId))
                    {
                        LoadSize = 10
                    };
                    break;

                case "OnTrackingGrouped":
                case "OnTrackingDetailed":
                    DataContext = new VirtualQueryableCollectionView(_uow.AccDocumentItems
                                                                     .Where(x => x.SL.SLCode == sender.Code)
                                                                     .OrderBy(x => x.AccDocumentHeaderId))
                    {
                        LoadSize = 10
                    };
                    break;

                default:
                    break;
                }
                accDocumentItemsGridView.IsBusy = false;
            };
        }
 internal void Raisedetail(AccDocumentItemDTO accDocumentItemDTO, string s)
 {
     DetailRequested?.Invoke(accDocumentItemDTO, s);
 }