private void ProcessDate(DataTableSE sender, DTObject data) { var dateColumns = sender.DateColumns; var datetimeColumns = sender.DatetimesColumns; if (dateColumns.Length > 0 || datetimeColumns.Length > 0) { data.Each("rows", (row) => { foreach (var column in dateColumns) { if (row.TryGetValue <DateTime>(column, out var value)) { row[column] = value.ToString("yyyy/MM/dd"); } } foreach (var column in datetimeColumns) { if (row.TryGetValue <DateTime>(column, out var value)) { row[column] = value.ToString("yyyy/MM/dd hh:mm"); } } }); } }
private DTObject GetElementById(string elementId) { if (_input == null) { return(null); } DTObject element = null; //找到元素对应的dto数据 _input.Each("elements", (ele) => { var id = ele.GetValue <string>("id", string.Empty); if (string.Equals(id, elementId, StringComparison.OrdinalIgnoreCase)) { element = ele; return(false); } return(true); });//{elements:[{id:'xxxx',metadata:xxxx}]} return(element); }
/// <summary> /// 根据登录人拥有的角色过滤菜单项 /// </summary> /// <param name="rawMenu"></param> /// <param name="principalRoles"></param> /// <returns></returns> private static DTObject FilterMenu(DTObject rawMenu, Principal.Role[] principalRoles) { var menuRoles = rawMenu.GetList("roles", false); if (menuRoles != null) { var roleCodes = menuRoles.ToArray <string>(); var result = principalRoles.FirstOrDefault((role) => { return(roleCodes.Contains(role.MarkedCode, StringComparer.OrdinalIgnoreCase)); }); if (result == null) { return(null); //当前登录人没有菜单需要的角色,不能显示 } } DTObject menu = DTObject.CreateReusable(); foreach (var member in _outputMembers) { if (rawMenu.Exist(member)) { menu[member] = rawMenu[member]; } } rawMenu.Each("childs", (child) => { var target = FilterMenu(child, principalRoles); if (target != null) { menu.Push("childs", target); } }); return(menu); }