protected void Page_Load(object sender, EventArgs e) { siteUrl = SPContext.Current.Site.Url; _changeShiftManagementDAL = new ChangeShiftManagementDAL(siteUrl); int currentUserId = SPContext.Current.Web.CurrentUser.ID; string itemIdParam = this.Page.Request.Params.Get("itemId"); XElement filterElement = null; Biz.Models.Delegation delegation = null; if (!string.IsNullOrEmpty(itemIdParam)) { delegation = _changeShiftManagementDAL.GetDelegatedTaskInfo(itemIdParam); } if (delegation != null) { filterElement = BuildViewFilterStringForDelegation(delegation); } else { filterElement = BuildViewFilterString(currentUserId); } InitialViewGUID(filterElement); }
protected void Page_Load(object sender, EventArgs e) { try { siteUrl = SPContext.Current.Site.Url; _notOvertimeManagementDAL = new NotOvertimeManagementDAL(siteUrl); int currentUserId = SPContext.Current.Web.CurrentUser.ID; string itemIdParam = this.Page.Request.Params.Get("itemId"); XElement filterElement = null; Biz.Models.Delegation delegation = null; if (!string.IsNullOrEmpty(itemIdParam)) { delegation = _notOvertimeManagementDAL.GetDelegatedTaskInfo(itemIdParam); } if (delegation != null) { filterElement = BuildViewFilterStringForDelegation(delegation); } else { filterElement = BuildViewFilterString(currentUserId); } InitialViewGUID(filterElement); } catch (Exception ex) { ULSLogging.Log(new SPDiagnosticsCategory("STADA - LeaveOfAbsenceApprovalControl - InitData", TraceSeverity.Unexpected, EventSeverity.Error), TraceSeverity.Unexpected, string.Format(CultureInfo.InvariantCulture, "{0}:{1}", ex.Message, ex.StackTrace)); } }
private XElement BuildViewFilterStringForDelegation(Biz.Models.Delegation delegation) { XElement filterElement = null; string filterStr = "<Eq><FieldRef Name='ID' /><Value Type='Counter'>0</Value></Eq>"; if (delegation != null && delegation.Requester != null && delegation.Requester.LookupId > 0) { filterStr = $@"<And> <Eq> <FieldRef Name='ID' /> <Value Type='Counter'>{delegation.ListItemID}</Value> </Eq> <IsNull> <FieldRef Name='ApprovalStatus' /> </IsNull> </And>"; } filterElement = XElement.Parse(filterStr); return(filterElement); }