Esempio n. 1
0
        public override void Search()
        {
            TransactionHeaderList.Clear();
            GetMaindata();
            if (SearchWindow == null)
            {
                SearchWindow = new GenericSearchWindow(GetSearchModel());
            }
            GenericSearchViewModel <TblSalesOrderRequestInvoiceHeaderModel> vm =
                new GenericSearchViewModel <TblSalesOrderRequestInvoiceHeaderModel>()
            {
                Title = "Sales Request Invoice Search"
            };

            vm.FilteredItemsList = TransactionHeaderList;
            vm.ItemsList         = TransactionHeaderList;
            vm.ResultItemsList.CollectionChanged += (s, e) =>
            {
                if (e.Action == NotifyCollectionChangedAction.Add)
                {
                    TransactionHeader = vm.ResultItemsList[e.NewStartingIndex];
                }
                GetDetailData();
                // RaisePropertyChanged(nameof(IsReadOnly));
            };
            vm.GetDataCommand = new SilverlightCommands.RelayCommand((o) =>
            {
                Filter        = vm.Filter;
                ValuesObjects = vm.ValuesObjects;
                GetMaindata();
            },
                                                                     (o) =>
            {
                return(true);//هنا الصلاحيات
            });
            SearchWindow.DataContext = vm;
            base.Search();
        }
Esempio n. 2
0
        internal void InitializeCompleted()
        {
            if (!DesignerProperties.IsInDesignTool)
            {
                Types = new ObservableCollection <Transactions>();
                if (LoggedUserInfo.CurrLang == 0)
                {
                    Types.Add(new Transactions {
                        TransactionId = 0, TransactionName = "أمر الشراء"
                    });
                    Types.Add(new Transactions {
                        TransactionId = 1, TransactionName = "صباغة"
                    });
                    Types.Add(new Transactions {
                        TransactionId = 2, TransactionName = "Transfer"
                    });
                }
                else
                {
                    Types.Add(new Transactions {
                        TransactionId = 0, TransactionName = "Purshase Order"
                    });
                    Types.Add(new Transactions {
                        TransactionId = 1, TransactionName = "Dyeing"
                    });
                    Types.Add(new Transactions {
                        TransactionId = 2, TransactionName = "Transfer"
                    });
                }
                Client = new CRUD_ManagerServiceClient();
                GetItemPermissions(PermissionItemName.Reservation.ToString());
                ObservableCollection <GetItemOnhand_Result> OnHandList = new ObservableCollection <GetItemOnhand_Result>();
                Client.GetReservationMainDetailByFabricCompleted += (s, f) =>
                {
                    if (f.OnHandList != null)
                    {
                        OnHandList = f.OnHandList;
                    }
                    TransactionHeader = new TblReservationHeaderViewModel();
                    foreach (var variable in f.Result)
                    {
                        TransactionHeader.TransactionMainDetails.Add(ReservationMappers.MaptoViewModel(variable, f.mainFabricList, OnHandList));
                    }
                    Loading = false;
                };
                Client.GetAllSeasonsCompleted += (s, sv) =>
                {
                    foreach (var row in sv.Result)
                    {
                        if (SeasonList.All(x => x.Iserial != row.Iserial))
                        {
                            SeasonList.Add(new TblLkpSeason().InjectFrom(row) as TblLkpSeason);
                        }
                    }
                };
                Client.GetAllSeasonsAsync();
                Client.GetAllBrandsCompleted += (s, sv) =>
                {
                    BrandsList.Clear();
                    foreach (var variable in sv.Result.OrderBy(x => x.Brand_Code))
                    {
                        BrandsList.Add(variable);
                    }
                };
                Client.GetAllBrandsAsync(0);
                TransactionGuid   = Guid.NewGuid().ToString();
                TransactionHeader = new TblReservationHeaderViewModel {
                    DocDate = DateTime.Now.Date
                };
                SelectedMainDetails = new TblReservationMainDetailsViewModel();

                Client.GetReservationHeaderListCompleted += (d, i) =>
                {
                    foreach (var item in i.Result)
                    {
                        TransactionHeaderList.Add(ReservationMappers.MaptoViewModel(item));
                    }
                };

                lkpClient.GetTblBrandSectionLinkCompleted += (x, sv) =>
                {
                    BrandSectionList.Clear();
                    foreach (var row in sv.Result)
                    {
                        BrandSectionList.Add(row.TblLkpBrandSection1);
                    }
                };
                SalesorderList = new ObservableCollection <CRUD_ManagerServiceSalesOrderDto>();

                SalesorderList.CollectionChanged += SalesorderList_CollectionChanged;

                Client.GetPurchaseOrderSalesOrdersCompleted += (d, s) =>
                {
                    foreach (var variable in s.Result)
                    {
                        if (!SalesorderList.Any(
                                x =>
                                x.SalesOrder.Contains(variable.SalesOrder) &&
                                x.SalesOrderColor.Contains(variable.SalesOrderColor)) && !SelectedMainDetails.ReservationDetailsViewModelList.Any(x => x.SalesOrder.Contains(variable.SalesOrder) &&
                                                                                                                                                  x.SalesOrderColor.Contains(variable.SalesOrderColor)))
                        {
                            SalesorderList.Add(variable);
                        }
                    }
                };

                Client.GetPurchaseOrderLinesCompleted += (s, f) =>
                {
                    foreach (var item in f.Result.Where(item => !OrderLineList.Contains(FabricInspectionMapper.MapToOrderLine(item))))
                    {
                        OrderLineList.Add(FabricInspectionMapper.MapToOrderLine(item));
                    }
                    Loading = false;
                };


                Client.GetRecivedDyedOrdersCompleted += (s, f) =>
                {
                    foreach (var item in f.Result.Where(item => !OrderLineList.Contains(FabricInspectionMapper.MapToOrderLine(item))))
                    {
                        OrderLineList.Add(FabricInspectionMapper.MapToOrderLine(item));
                    }
                };
                Client.GetTransferInventDimLinesCompleted += (s, f) =>
                {
                    foreach (var item in f.Result.Where(item => !OrderLineList.Contains(FabricInspectionMapper.MapToOrderLine(item))))
                    {
                        OrderLineList.Add(FabricInspectionMapper.MapToOrderLine(item));
                    }
                };
                Client.GetReservationMainDetailsCompleted += (s, f) =>
                {
                    foreach (var variable in f.Result)
                    {
                        if (variable.Inspected)
                        {
                            Client.GetResInspectionListAsync(variable.LineNum, TransactionHeader.TransOrder);
                        }
                        //f.mainFabricList;
                        TransactionHeader.TransactionMainDetails.Add(ReservationMappers.MaptoViewModel(variable, f.mainFabricList));
                    }
                };

                Client.SaveReservationCompleted += (a, f) =>
                {
                    if (f.ErrorExists)
                    {
                        var visList = TransactionHeader.TransactionMainDetails.Where(x => f.Result.All(s => s.Fabric == x.Fabric && s.FabricColor == x.FabricColor));

                        foreach (var item in TransactionHeader.TransactionMainDetails)
                        {
                            item.ErrorVisbility = visList.Contains(item) ? Visibility.Visible : Visibility.Collapsed;
                        }
                    }
                    else
                    {
                        var tblFabricInspectionDetail = f.Result.FirstOrDefault();
                        if (tblFabricInspectionDetail != null)
                        {
                            TransactionHeader.Iserial = tblFabricInspectionDetail.Tbl_ReservationHeader;
                        }
                        TransactionHeader.TransactionMainDetails.Clear();
                        foreach (var item in f.Result)
                        {
                            TransactionHeader.TransactionMainDetails.Add((TblReservationMainDetailsViewModel) new TblReservationMainDetailsViewModel().InjectFrom(item));
                        }
                        var currentUi = Thread.CurrentThread.CurrentUICulture;
                        if (currentUi.DisplayName == "العربية")
                        {
                            MessageBox.Show("Saved");
                        }
                        else
                        {
                            MessageBox.Show("Saved");
                        }
                    }
                };


                Client.GenerateReservationFromPlanCompleted += (s, sv) => Client.GetReservationMainDetailsAsync(TransactionHeader.Iserial);
                Client.GetSalesOrderReservationCompleted    += (s, sv) =>
                {
                    GenericMapper.InjectFromObCollection(SelectedMainDetails.ReservationDetailsViewModelList, sv.Result);
                    foreach (var item in (SelectedMainDetails.ReservationDetailsViewModelList))
                    {
                        item.Tbl_ReservationMainDetails = SelectedMainDetails.Iserial;
                    }
                };
                Client.ReservationLineNumCompleted += (s, p) =>
                {
                    var lines = new ObservableCollection <decimal>(p.Result);

                    if (TransactionHeader.TransactionMainDetails.Count() != 0)
                    {
                        foreach (var variable in TransactionHeader.TransactionMainDetails.Select(x => x.LineNum))
                        {
                            lines.Add(variable);
                        }
                    }
                    if (SortBy == null)
                    {
                        SortBy = "it.PURCHQTY";
                    }
                    if (TransactionHeader.TransactionType == 0)
                    {
                        Client.GetPurchaseOrderLinesAsync(OrderLineList.Count, PageSize, "ccm", TransactionHeader.TransOrder, lines, "it.PURCHQTY desc", Filter, ValuesObjects);
                    }
                    if (TransactionHeader.TransactionType == 1)
                    {
                        Client.GetRecivedDyedOrdersAsync(OrderLineList.Count, PageSize, TransactionHeader.TransOrder, lines, "it.PURCHQTY desc", Filter, ValuesObjects);
                    }
                    else if (TransactionHeader.TransactionType == 2)
                    {
                        Client.GetTransferInventDimLinesAsync(OrderLineList.Count, PageSize, "ccm", TransactionHeader.TransOrder, lines, "it.PURCHQTY desc", Filter, ValuesObjects);
                    }
                };
            }
        }
Esempio n. 3
0
        public SalesOrderRequestInvoiceViewModel() : base(PermissionItemName.SalesOrderRequestInvoice)
        {
            //         WarehouseClient.PostSalesOrderRequestInvoiceCompleted += (s, sv) =>
            //{
            //	if (sv.Result != null) TransactionHeader.InjectFrom(sv.Result);
            //	TransactionHeader.VisPosted = false;
            //	MessageBox.Show("Posted Completed");
            //};


            GetItemPermissions(PermissionItemName.SalesOrderRequestInvoice.ToString());
            var journalAccountTypeClient = new GlService.GlServiceClient();

            journalAccountTypeClient.GetGenericCompleted += (s, sv) =>
            {
                JournalAccountTypeList = sv.Result;
            };
            journalAccountTypeClient.GetGenericAsync("TblJournalAccountType", "%%", "%%", "%%", "Iserial", "ASC", LoggedUserInfo.DatabasEname);

            MiscValueTypeList = new ObservableCollection <CRUDManagerService.GenericTable>
            {
                new CRUDManagerService.GenericTable {
                    Iserial = 0, Code = "%", Ename = "%", Aname = "%"
                },
                new CRUDManagerService.GenericTable {
                    Iserial = 1, Code = "Value", Ename = "Value", Aname = "Value"
                }
            };

            var currencyClient = new GlService.GlServiceClient();

            currencyClient.GetGenericCompleted += (s, sv) =>
            {
                CurrencyList = new ObservableCollection <CRUDManagerService.GenericTable>();
                foreach (var item in sv.Result)
                {
                    CurrencyList.Add(new CRUDManagerService.GenericTable().InjectFrom(item) as CRUDManagerService.GenericTable);
                }
            };
            currencyClient.GetGenericAsync("TblCurrency", "%%", "%%", "%%", "Iserial", "ASC", LoggedUserInfo.DatabasEname);

            PurchasePlanClient.GetTblMarkupProdAsync(0, int.MaxValue, "it.Iserial", null, null, LoggedUserInfo.DatabasEname);

            PurchasePlanClient.GetTblMarkupProdCompleted += (s, sv) =>
            {
                MarkupList = new ObservableCollection <CRUDManagerService.TblMarkupProd>();
                foreach (var item in sv.Result)
                {
                    MarkupList.Add(new CRUDManagerService.TblMarkupProd().InjectFrom(item) as CRUDManagerService.TblMarkupProd);
                }
            };


            TransactionHeader = new TblSalesOrderRequestInvoiceHeaderModel {
                DocDate = DateTime.Now
            };



            WarehouseClient.UpdateOrInsertTblSalesOrderRequestInvoiceHeaderCompleted += (s, sv) =>
            {
                if (sv.Error != null)
                {
                    MessageBox.Show(sv.Error.Message);
                }
                try
                {
                    TransactionHeader.InjectFrom(sv.Result);

                    if (TransactionHeader.Status == 0)
                    {
                        TransactionHeader.VisPosted = true;
                    }
                    else
                    {
                        TransactionHeader.VisPosted = false;
                    }
                }
                // ReSharper disable once EmptyGeneralCatchClause
                catch (Exception)
                {
                }
                Loading = false;
                Loading = false;
                MessageBox.Show("Saved");
            };

            WarehouseClient.UpdateOrInsertTblSalesOrderRequestInvoiceMarkupTransProdsCompleted += (s, x) =>
            {
                var markup = new CRUDManagerService.TblMarkupProd();
                try
                {
                    var row = TransactionHeader.MarkUpTransList.ElementAt(x.outindex);
                    if (row != null)
                    {
                        markup = row.TblMarkupProd1;
                    }
                    TransactionHeader.MarkUpTransList.ElementAt(x.outindex).InjectFrom(x.Result);

                    if (row != null)
                    {
                        row.TblMarkupProd1 = markup;
                    }
                }
                // ReSharper disable once EmptyGeneralCatchClause
                catch (Exception)
                {
                }

                Loading = false;
            };
            WarehouseClient.GetTblSalesOrderRequestInvoiceHeaderCompleted += (s, sv) =>
            {
                Loading = false;
                TransactionHeaderList.Clear();
                foreach (var variable in sv.Result.ToList())
                {
                    var newrow = new TblSalesOrderRequestInvoiceHeaderModel();
                    newrow.InjectFrom(variable);
                    if (newrow.Status == 0)
                    {
                        newrow.VisPosted = true;
                    }
                    newrow.JournalAccountTypePerRow = new GlService.GenericTable();
                    newrow.JournalAccountTypePerRow = JournalAccountTypeList.FirstOrDefault(w => w.Iserial == newrow.TblJournalAccountType);
                    newrow.EntityPerRow             = new GlService.Entity().InjectFrom(sv.entityList.FirstOrDefault(w => w.Iserial == variable.EntityAccount && w.TblJournalAccountType == variable.TblJournalAccountType)) as GlService.Entity;
                    newrow.CurrencyPerRow           = new GlService.GenericTable().InjectFrom(CurrencyList.FirstOrDefault(w => w.Iserial == newrow.TblCurrency)) as GlService.GenericTable;
                    TransactionHeaderList.Add(newrow);
                }
            };
            WarehouseClient.GetTblSalesIssueHeaderCompleted += (s, sv) =>
            {
                if (sv.Result != null)
                {
                    foreach (var row in sv.Result)
                    {
                        if (!RecieveHeaderList.Select(x => x.DocCode).Contains(row.DocCode))
                        {
                            RecieveHeaderList.Add(new TblSalesIssueHeaderModel().InjectFrom(row) as TblSalesIssueHeaderModel);
                        }
                    }
                }
            };
            WarehouseClient.GetSalesIssueHeaderPendingCompleted += (s, sv) =>
            {
                if (sv.Result != null)
                {
                    foreach (var row in sv.Result)
                    {
                        if (!RecieveHeaderChoosedList.Select(x => x.DocCode).Contains(row.DocCode))
                        {
                            RecieveHeaderChoosedList.Add(
                                new TblSalesIssueHeaderModel().InjectFrom(row) as TblSalesIssueHeaderModel);
                        }
                    }
                }
            };

            WarehouseClient.GetTblSalesOrderRequestInvoiceDetailCompleted += (s, sv) =>
            {
                foreach (var variable in sv.Result.ToList())
                {
                    var newrow = new TblSalesOrderRequestInvoiceDetailModel();
                    newrow.InjectFrom(variable);
                    newrow.ItemPerRow = new CRUDManagerService.ItemsDto().InjectFrom(sv.itemsList.FirstOrDefault(w => w.ItemGroup == variable.TblItemDim1.ItemType && w.Iserial == variable.TblItemDim1.ItemIserial)) as CRUDManagerService.ItemsDto;
                    TransactionDetails.Add(newrow);
                }
            };
            WarehouseClient.SearchSalesOrderRequestInvoiceCompleted += (s, sv) =>
            {
                if (sv.Result != null)
                {
                    TransactionHeader.InjectFrom(sv.Result);
                }
                TransactionHeader.VisPosted = true;
                GetDetailData();
            };
            WarehouseClient.PostTblSalesOrderRequestInvoiceHeaderCompleted += (s, sv) =>
            {
                if (sv.Result != null)
                {
                    TransactionHeader.InjectFrom(sv.Result);
                }
                //   TransactionHeader.VisPosted = true;
                // GetDetailData();
            };
        }