/// <summary> /// 导出Excel /// </summary> /// <param name="sheet">导入所在的工作表</param> /// <param name="lambda">查询条件</param> /// <returns>数据</returns> public void ExportExcel(ISheet sheet, LambdaItem <TData> lambda) { var datas = Access.All(lambda); OnDataLoaded?.Invoke(datas); WriteToSheet(sheet, datas); }
/// <summary> /// 导出Excel /// </summary> /// <param name="sheet">导入所在的工作表</param> /// <param name="lambda">查询条件</param> /// <returns>数据</returns> public void ExportExcel(ISheet sheet, Expression <Func <TData, bool> > lambda) { var datas = Access.All(lambda); OnDataLoaded?.Invoke(datas); WriteToSheet(sheet, datas); }
/// <summary> /// 载入完整的结构树(UI相关) /// </summary> /// <returns></returns> public List <EasyUiTreeNode> LoadTreeRootForUi() { var rootNode = new EasyUiTreeNode { ID = -1, IsOpen = true, Icon = "icon-tree-folder", Attributes = "root", Text = "系统页面", IsFolder = true }; var roots = Access.All(p => p.ItemType == PageItemType.Root, p => p.Index, false); foreach (var root in roots) { var node = new EasyUiTreeNode { ID = root.Id, IsOpen = true, Tag = root.Name, Icon = "icon-tree-folder", Attributes = root.ItemType.ToString(), Text = root.Caption, IsFolder = true }; LoadTreeForUi(root.Id, node); rootNode.Children.Add(node); } return(new List <EasyUiTreeNode> { rootNode }); }
/// <summary> /// 导出Excel /// </summary> /// <param name="sheet">导入所在的工作表</param> /// <returns>数据</returns> public void ExportExcel(ISheet sheet) { var datas = Access.All(); OnDataLoad?.Invoke(datas); WriteToSheet(sheet, datas); }
private void SaveButtonItem(long pid, string element, string caption, string action, bool isButton = true) { var b = Access.All(p => p.ParentId == pid && p.ExtendValue == action); if (b.Count != 0) { for (int i = 1; i < b.Count; i++) { Access.PhysicalDelete(b[i].Id); } b[0].Caption = caption; b[0].Name = isButton ? element : action; b[0].ExtendValue = action; b[0].ItemType = isButton ? PageItemType.Button : PageItemType.Action; b[0].Memo = caption; Access.Update(b[0]); } //else //{ // Access.Insert(new PageItemData // { // ParentId = pid, // ItemType = isButton ? PageItemType.Button : PageItemType.Action, // Name = isButton ? element : action, // Caption = caption, // Memo = caption, // ExtendValue = action // }); //} }
/// <summary> /// 生成完整的组织结构树(UI相关) /// </summary> /// <returns></returns> public void CreateAreaTree(RedisProxy proxy) { var root = CreateRootNode(); var lists = Access.All(p => p.DataState < DataStateType.Delete); CreateAreaTree(root, lists, proxy); }
/// <summary> /// 载入完整的组织结构树(用于编辑) /// </summary> /// <returns></returns> internal OrganizationData[] LoadEditTree() { var root = new OrganizationData(); var lists = Access.All(p => p.DataState < DataStateType.Delete); SetChildren(root, 0, lists); return(root.Children); }
/// <summary> /// 生成完整的组织结构树(UI相关) /// </summary> /// <returns></returns> private void CreateFullOrgTree(RedisProxy proxy) { using (SystemContextScope.CreateScope()) { var root = CreateRootNode(); var lists = Access.All(p => p.DataState < DataStateType.Delete); CreateOrgTree(root, lists, proxy); } }
/// <summary> /// 载入完整的组织结构树(包含职位) /// </summary> /// <returns></returns> internal void CreateOrgPosTree(RedisProxy proxy) { var root = CreateRootNode(); var orgs = Access.All(p => p.DataState < DataStateType.Delete); var opAccess = new OrganizePositionDataAccess(); var posts = opAccess.All(p => p.DataState < DataStateType.Delete); CreateOrgPosTree(0, proxy, root, orgs, posts); }
/// <summary> /// 同步更改到下级 /// </summary> /// <param name="entity">数据</param> private void SyncChild(OrganizationData entity) { Access.Update(entity); var children = Access.All(p => p.ParentId == entity.Id); foreach (var child in children) { SyncTreeInfo(entity, child); } }
/// <summary> /// 载入完整的组织结构树 /// </summary> /// <returns></returns> internal OrganizationData[] LoadTree(int pid) { var lists = Access.All(p => p.DataState < DataStateType.Delete); var root = lists.FirstOrDefault(p => p.Id == pid); if (root == null) { return(null); } SetChildren(root, pid, lists); return(new[] { root }); }
/// <summary> /// 载入完整的结构树(UI相关) /// </summary> /// <returns></returns> public void LoadTreeForUi(long pid, EasyUiTreeNode parent) { var childs = Access.All(p => p.ParentId == pid && p.ItemType <= PageItemType.Page); if (childs.Count == 0) { return; } foreach (var child in childs.OrderBy(p => p.Index)) { var node = new EasyUiTreeNode { ID = child.Id, IsOpen = true, Tag = child.Name, Attributes = child.ItemType.ToString(), Text = child.Caption, IsFolder = true }; switch (child.ItemType) { case PageItemType.Folder: node.Icon = "icon-tree-folder"; node.IsOpen = false; break; case PageItemType.Page: node.Icon = "icon-tree-page"; break; case PageItemType.Action: node.Icon = "icon-tree-action"; break; case PageItemType.Button: node.Icon = "icon-tree-button"; break; } LoadTreeForUi(child.Id, node); parent.Children.Add(node); } }
/// <summary> /// 缓存 /// </summary> private void DoCache() { using (SystemContextScope.CreateScope()) { using (MySqlDataBaseScope.CreateScope(Access.DataBase)) { var pAccess = new PositionPersonnelDataAccess(); foreach (var pos in pAccess.All()) { SyncUser(pos); } var users = Access.All(); using (var proxy = new RedisProxy(RedisProxy.DbSystem)) { foreach (var user in users) { Cache(proxy, user); } } } } }
/// <summary> /// 导出Excel /// </summary> /// <param name="sheet">导入所在的工作表</param> /// <returns>数据</returns> public void ExportExcel(ISheet sheet) { var datas = Access.All(); WriteToSheet(sheet, datas); }
/// <summary> /// 取机构隶属表 /// </summary> /// <param name="oid"></param> public List <SubjectionData> GetOrganizationSubjection(int oid) { return(Access.All(p => p.MasterId == oid)); }
public JobInfo GetJobInfo(int id) { JobInfo info = new JobInfo { Job = Details(id) }; if (info.Job == null) { return(info); } var alls = Access.All(p => p.LinkId == info.Job.LinkId && p.EntityType == info.Job.EntityType); InitJobByUi(info.Job); foreach (var job in alls) { job.FromUserName = UserJobDataAccess.GetUserName(job.FromUserId); job.ToUserName = UserJobDataAccess.GetUserName(job.ToUserId); JobItem item = new JobItem(); StringBuilder head = new StringBuilder(); if (job.JobType == UserJobType.Edit) { item.Icon = "wf_edit.png"; if (!string.IsNullOrWhiteSpace(job.FromUserName)) { head.Append(job.FromUserName); if (job.Date > DateTime.MinValue) { head.Append($"({job.Date:yyyy-MM-dd HH:mm:ss})"); } } else if (info.Data != null) { head.Append(UserJobDataAccess.GetUserName(info.Data.AuthorID)); if (info.Data.AddDate > DateTime.MinValue) { head.Append($"({info.Data.AddDate:yyyy-MM-dd HH:mm:ss})"); } } } else if (job.JobType == UserJobType.Audit) { switch (job.JobStatus) { case JobStatusType.Trans: item.Icon = "wf_trans.png"; break; case JobStatusType.Notify: item.Icon = "wf_notify.png"; break; //case JobStatusType.None: default: item.Icon = "wf_audit.png"; break; case JobStatusType.Succeed: item.Icon = "wf_succeed.png"; break; case JobStatusType.Canceled: item.Icon = "wf_canceled.png"; break; case JobStatusType.NoHit: item.Icon = "wf_failed.png"; break; } head.AppendFormat("{0} > {1}", job.FromUserName ?? "系统", job.ToUserName ?? "系统"); if (job.Date > DateTime.MinValue) { head.Append($"({job.Date:yyyy-MM-dd HH:mm:ss})"); } } else { if (job.ToUserId != BusinessContext.Current.LoginUserId) { continue; } item.Icon = "wf_notify.png"; head.AppendFormat("{0} > {1}", job.FromUserName ?? "系统", job.ToUserName ?? "系统"); if (job.Date > DateTime.MinValue) { head.Append($"({job.Date:yyyy-MM-dd HH:mm:ss})"); } } item.Title = head.ToString(); item.Message = job.Message; info.Items.Add(item); } return(info); }