public CheckListTransactionViewModel()
        {
            if (!DesignerProperties.IsInDesignTool)
            {
                MainRowList              = new ObservableCollection <GenericViewModel>();
                SelectedMainRow          = new GenericViewModel();
                SelectedDetailRow        = new TblCheckTransactionViewModel();
                DetailListCollectionView = new PagedCollectionView(DetailList);
                DetailListCollectionView.GroupDescriptions.Add(new PropertyGroupDescription("CheckListGroupPerRow.Ename"));
                DetailListCollectionView.GroupDescriptions.Add(new PropertyGroupDescription("CheckListDesignGroupHeader1PerRow.Ename"));
                Client.GetTblCheckListLinkCompleted += (s, sv) =>
                {
                    foreach (var row in sv.Result)
                    {
                        var newrow = new TblCheckTransactionViewModel
                        {
                            Aname            = row.TblCheckListItem1.Aname,
                            Ename            = row.TblCheckListItem1.Ename,
                            Iserial          = row.Iserial,
                            Code             = row.TblCheckListItem1.Code,
                            TblCheckListItem = row.Iserial,
                            TransDate        = DateTime.Now,
                            TblAuthUser      = LoggedUserInfo.Iserial,
                            TblCheckListDesignGroupHeader1 = row.TblCheckListDesignGroupHeader1,
                            TblCheckListDesignGroupHeader2 = row.TblCheckListDesignGroupHeader2,
                            CheckListGroupPerRow           = row.TblCheckListGroup1,
                        };

                        if (row.TblCheckListDesignGroupHeader11 != null)
                        {
                            newrow.CheckListDesignGroupHeader1PerRow.InjectFrom(row.TblCheckListDesignGroupHeader11);
                        }

                        if (row.TblCheckListDesignGroupHeader21 != null)
                        {
                            newrow.CheckListDesignGroupHeader2PerRow.InjectFrom(row.TblCheckListDesignGroupHeader21);
                        }

                        if (LoggedUserInfo.Store != null)
                        {
                            newrow.Store = LoggedUserInfo.Store.code;
                        }
                        if (LoggedUserInfo.Company != null)
                        {
                            newrow.Company = LoggedUserInfo.Company.Code;
                        }
                        DetailList.Add(newrow);
                    }
                    Client.GetTblCheckListTransactionAsync(LoggedUserInfo.Iserial);
                };

                Client.GetTblUserCheckListAsync(LoggedUserInfo.Iserial);
                Client.GetTblUserCheckListCompleted += (s, sv) =>
                {
                    foreach (var variable in sv.Result)
                    {
                        Client.GetTblCheckListLinkAsync(variable.TblCheckListGroup);
                    }
                };

                Client.GetTblCheckListTransactionCompleted += (s, sv) =>
                {
                    foreach (var row in DetailList)
                    {
                        row.UpdatedAllowed = false;
                        row.Checked        = false;
                        row.Notes          = null;
                        row.Approved       = false;
                    }
                    foreach (var row in sv.Result)
                    {
                        var subCheckListRow = DetailList.SingleOrDefault(x =>
                                                                         x.TblCheckListItem == row.TblCheckListItem);
                        if (subCheckListRow != null)
                        {
                            subCheckListRow.Checked = true;
                            subCheckListRow.Notes   = row.Notes;
                            subCheckListRow.Yes     = row.Yes;
                            subCheckListRow.No      = row.No;
                        }
                    }
                };
            }
        }
Example #2
0
        public CheckListLinkViewModel()
        {
            if (!DesignerProperties.IsInDesignTool)
            {
                MainRowList       = new ObservableCollection <GenericViewModel>();
                SelectedMainRow   = new GenericViewModel();
                SelectedDetailRow = new TblCheckListLinkViewModel();

                Client.GetGenericCompleted += (s, sv) =>
                {
                    foreach (var row in sv.Result)
                    {
                        var newrow = new GenericViewModel
                        {
                            Aname   = row.Aname,
                            Ename   = row.Ename,
                            Iserial = row.Iserial,
                            Code    = row.Code
                        };
                        MainRowList.Add(newrow);
                    }
                };
                Client.GetGenericAsync("TblCheckListGroup", "%%", "%%", "%%", "Iserial", "ASC");

                var detailservice = new CRUD_ManagerServiceClient();

                detailservice.GetGenericCompleted += (s, sv) =>
                {
                    foreach (var row in sv.Result)
                    {
                        var newrow = new TblCheckListLinkViewModel
                        {
                            Aname            = row.Aname,
                            Ename            = row.Ename,
                            Iserial          = row.Iserial,
                            Code             = row.Code,
                            TblCheckListItem = row.Iserial
                        };
                        DetailList.Add(newrow);
                    }
                };
                detailservice.GetGenericAsync("TblCheckListItem", "%%", "%%", "%%", "Iserial", "ASC");

                var header1Service = new CRUD_ManagerServiceClient();

                header1Service.GetGenericCompleted += (s, sv) =>
                {
                    foreach (var row in sv.Result)
                    {
                        var newrow = new GenericTable
                        {
                            Aname   = row.Aname,
                            Ename   = row.Ename,
                            Iserial = row.Iserial,
                            Code    = row.Code,
                        };
                        CheckListDesignGroupHeader1List.Add(newrow);
                    }
                };
                header1Service.GetGenericAsync("TblCheckListDesignGroupHeader1", "%%", "%%", "%%", "Iserial", "ASC");
                var header2 = new CRUD_ManagerServiceClient();
                header2.GetGenericCompleted += (s, sv) =>
                {
                    foreach (var row in sv.Result)
                    {
                        var newrow = new GenericTable
                        {
                            Aname   = row.Aname,
                            Ename   = row.Ename,
                            Iserial = row.Iserial,
                            Code    = row.Code,
                        };
                        CheckListDesignGroupHeader2List.Add(newrow);
                    }
                };
                header2.GetGenericAsync("TblCheckListDesignGroupHeader2", "%%", "%%", "%%", "Iserial", "ASC");

                Client.GetTblCheckListLinkCompleted += (s, sv) =>
                {
                    foreach (var row in DetailList)
                    {
                        row.UpdatedAllowed = false;
                        row.Checked        = false;
                        row.CheckListDesignGroupHeader1PerRow = null;
                        row.CheckListDesignGroupHeader2PerRow = null;
                        row.TblCheckListDesignGroupHeader1    = null;
                        row.TblCheckListDesignGroupHeader2    = null;
                    }
                    foreach (var row in sv.Result)
                    {
                        var subCheckListRow = DetailList.SingleOrDefault(x =>
                                                                         x.Iserial == row.TblCheckListItem);
                        if (subCheckListRow != null)
                        {
                            subCheckListRow.Checked = true;
                            if (row.TblCheckListDesignGroupHeader11 != null)
                            {
                                subCheckListRow.CheckListDesignGroupHeader1PerRow.InjectFrom(row.TblCheckListDesignGroupHeader11);
                            }

                            if (row.TblCheckListDesignGroupHeader21 != null)
                            {
                                subCheckListRow.CheckListDesignGroupHeader2PerRow.InjectFrom(row.TblCheckListDesignGroupHeader21);
                            }
                        }
                    }
                };
            }
        }