public ActionResult GetPlistUiViewButtons(GetPlistUiViewButtons requestData) { if (!ModelState.IsValid) { return(ModelState.ToJsonResult()); } var data = AcDomain.GetPlistUiViewButtons(requestData); Debug.Assert(requestData.Total != null, "requestData.total != null"); return(this.JsonResult(new MiniGrid <UiViewAssignButtonTr> { total = requestData.Total.Value, data = data })); }
public static IQueryable<UiViewAssignButtonTr> GetPlistUiViewButtons(this IAcDomain acDomain, GetPlistUiViewButtons requestData) { if (!requestData.UiViewId.HasValue) { throw new ValidationException("uiViewID是必须的"); } UiViewState view; if (!acDomain.UiViewSet.TryGetUiView(requestData.UiViewId.Value, out view)) { throw new ValidationException("意外的页面标识" + requestData.UiViewId); } var viewButtons = acDomain.UiViewSet.GetUiViewButtons(view); var buttons = acDomain.ButtonSet; var data = new List<UiViewAssignButtonTr>(); foreach (var button in buttons) { var viewButton = viewButtons.FirstOrDefault(a => a.ButtonId == button.Id && a.UiViewId == view.Id); if (requestData.IsAssigned.HasValue) { if (requestData.IsAssigned.Value) { if (viewButton == null) { continue; } } else { if (viewButton != null) { continue; } } } DateTime? createOn = null; int isEnabled; string functionCode = null; Guid? functionId = null; string functionName = null; Guid id; bool isAssigned; int functionIsEnabled = 0; if (viewButton != null) { createOn = viewButton.CreateOn; isEnabled = viewButton.IsEnabled; id = viewButton.Id; isAssigned = true; FunctionState function; if (viewButton.FunctionId.HasValue && acDomain.FunctionSet.TryGetFunction(viewButton.FunctionId.Value, out function)) { functionCode = function.Code; functionId = function.Id; functionName = function.Description; functionIsEnabled = function.IsEnabled; } } else { id = Guid.NewGuid(); isAssigned = false; isEnabled = 0; } data.Add(new UiViewAssignButtonTr { CreateOn = createOn, Id = id, IsAssigned = isAssigned, FunctionIsEnabled = functionIsEnabled, Icon = button.Icon, IsEnabled = isEnabled, Name = button.Name, ButtonId = button.Id, ButtonIsEnabled = button.IsEnabled, Code = button.Code, FunctionCode = functionCode, FunctionId = functionId, FunctionName = functionName, UiViewId = view.Id, SortCode = button.SortCode }); } int pageIndex = requestData.PageIndex; int pageSize = requestData.PageSize; var queryable = data.AsQueryable(); if (!string.IsNullOrEmpty(requestData.key)) { queryable = queryable.Where(a => a.Name.Contains(requestData.key) || a.Code.Contains(requestData.key)); } requestData.Total = queryable.Count(); return queryable.OrderBy(requestData.SortField + " " + requestData.SortOrder).Skip(pageIndex * pageSize).Take(pageSize); }
public static IQueryable <UiViewAssignButtonTr> GetPlistUiViewButtons(this IAcDomain acDomain, GetPlistUiViewButtons requestData) { if (!requestData.UiViewId.HasValue) { throw new ValidationException("uiViewID是必须的"); } UiViewState view; if (!acDomain.UiViewSet.TryGetUiView(requestData.UiViewId.Value, out view)) { throw new ValidationException("意外的页面标识" + requestData.UiViewId); } var viewButtons = acDomain.UiViewSet.GetUiViewButtons(view); var buttons = acDomain.ButtonSet; var data = new List <UiViewAssignButtonTr>(); foreach (var button in buttons) { var viewButton = viewButtons.FirstOrDefault(a => a.ButtonId == button.Id && a.UiViewId == view.Id); if (requestData.IsAssigned.HasValue) { if (requestData.IsAssigned.Value) { if (viewButton == null) { continue; } } else { if (viewButton != null) { continue; } } } DateTime?createOn = null; int isEnabled; string functionCode = null; Guid? functionId = null; string functionName = null; Guid id; bool isAssigned; int functionIsEnabled = 0; if (viewButton != null) { createOn = viewButton.CreateOn; isEnabled = viewButton.IsEnabled; id = viewButton.Id; isAssigned = true; FunctionState function; if (viewButton.FunctionId.HasValue && acDomain.FunctionSet.TryGetFunction(viewButton.FunctionId.Value, out function)) { functionCode = function.Code; functionId = function.Id; functionName = function.Description; functionIsEnabled = function.IsEnabled; } } else { id = Guid.NewGuid(); isAssigned = false; isEnabled = 0; } data.Add(new UiViewAssignButtonTr { CreateOn = createOn, Id = id, IsAssigned = isAssigned, FunctionIsEnabled = functionIsEnabled, Icon = button.Icon, IsEnabled = isEnabled, Name = button.Name, ButtonId = button.Id, ButtonIsEnabled = button.IsEnabled, Code = button.Code, FunctionCode = functionCode, FunctionId = functionId, FunctionName = functionName, UiViewId = view.Id, SortCode = button.SortCode }); } int pageIndex = requestData.PageIndex; int pageSize = requestData.PageSize; var queryable = data.AsQueryable(); if (!string.IsNullOrEmpty(requestData.key)) { queryable = queryable.Where(a => a.Name.Contains(requestData.key) || a.Code.Contains(requestData.key)); } requestData.Total = queryable.Count(); return(queryable.OrderBy(requestData.SortField + " " + requestData.SortOrder).Skip(pageIndex * pageSize).Take(pageSize)); }
public ActionResult GetPlistUiViewButtons(GetPlistUiViewButtons requestData) { if (!ModelState.IsValid) { return ModelState.ToJsonResult(); } var data = AcDomain.GetPlistUiViewButtons(requestData); Debug.Assert(requestData.Total != null, "requestData.total != null"); return this.JsonResult(new MiniGrid<UiViewAssignButtonTr> { total = requestData.Total.Value, data = data }); }