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; } } }; } }
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); } } } }; } }