public async Task <object> GetMenuByIds(string ids) { var data = await _menuSvc.Query(); var menuList = await _menuSvc.GetDataByids(ids, data); for (int i = 0; i < menuList.Count; i++) { menuList[i].ParentName = menuList[i].ParentId.HasValue ? (data.FirstOrDefault(s => s.Id == menuList[i].ParentId).MenuName) : ""; } var menuList1 = menuList.Where(s => !s.ParentId.HasValue).OrderBy(s => s.Index).ToList(); //获取一级菜单(顶部) for (int i = 0; i < menuList1.Count; i++) { var menuList2 = menuList.Where(s => s.ParentId == menuList1[i].Id).OrderBy(s => s.Index).ToList(); //获取二级菜单 for (int j = 0; j < menuList2.Count; j++) { menuList2[j].Children = menuList.Where(s => s.ParentId == menuList2[j].Id).OrderBy(s => s.Index).ToList(); //获取三级菜单 } menuList1[i].Children = menuList2; } return(new MessageModel <object>() { Response = menuList1, Success = true, Message = "获取成功" }); }
/// <summary> /// 数据库基础表数据导出到json文件 /// </summary> /// <param name="tableName">指定表名称</param> /// <param name="path">存放路径</param> /// <returns></returns> public async Task <string> ExportTable(string tableName, string path) { string outPaths = string.Empty; Dictionary <string, string> dic = new Dictionary <string, string>(); switch (tableName.ToLower()) { case "user": dic.Add(typeof(User).Name, JsonHelper.JSON(await _userSvc.Query())); break; case "dept": dic.Add(typeof(Dept).Name, JsonHelper.JSON(await _deptSvc.Query())); break; case "role": dic.Add(typeof(Role).Name, JsonHelper.JSON(await _roleSvc.Query())); break; case "menu": dic.Add(typeof(Menu).Name, JsonHelper.JSON(await _menuSvc.Query())); break; case "tasksqz": dic.Add(typeof(TasksQz).Name, JsonHelper.JSON(await _tasksQzSvc.Query())); break; default: dic.Add(typeof(User).Name, JsonHelper.JSON(await _userSvc.Query())); dic.Add(typeof(Dept).Name, JsonHelper.JSON(await _deptSvc.Query())); dic.Add(typeof(Role).Name, JsonHelper.JSON(await _roleSvc.Query())); dic.Add(typeof(Menu).Name, JsonHelper.JSON(await _menuSvc.Query())); dic.Add(typeof(TasksQz).Name, JsonHelper.JSON(await _tasksQzSvc.Query())); break; } if (!Directory.Exists(path)) { Directory.CreateDirectory(path); } foreach (var item in dic) { string filePath = Path.Combine(path, $@"{item.Key}.json"); using (FileStream fs = new FileStream(filePath, FileMode.OpenOrCreate, FileAccess.ReadWrite, FileShare.ReadWrite)) { fs.SetLength(0); //清空文件内容 using (StreamWriter sw = new StreamWriter(fs, Encoding.UTF8)) { sw.WriteLine(item.Value); } } outPaths += $"表{item.Key}-数据生成:{filePath} || "; } return(outPaths[0..^ 4]);
public async Task <object> GetLoginByToken(string token) { var data = new MessageModel <LoginViewModel>(); var loginViewModel = new LoginViewModel(); if (!string.IsNullOrEmpty(token)) { var tokenModel = JwtHelper.SerializeJwt(token); if (tokenModel != null && tokenModel.Id > 0) { var model = await _userSvc.QueryById(tokenModel.Id); if (model != null) { loginViewModel = _mapper.Map <LoginViewModel>(model); if (model.RoleIds != "") { var roleList = await _roleSvc.GetDataByids(model.RoleIds); loginViewModel.RoleInfoList = _mapper.Map <IList <Role>, IList <RoleViewModel> >(roleList); var menuIds = roleList.Select(s => s.MenuIds).ToList().JoinToString(","); var menuData = await _menuSvc.Query(); var menuList = await _menuSvc.GetDataByids(menuIds, menuData); if (menuList.Count > 0) { for (int i = 0; i < menuList.Count; i++) { menuList[i].ParentName = menuList[i].ParentId.HasValue ? (menuData.FirstOrDefault(s => s.Id == menuList[i].ParentId).MenuName) : ""; } var menuList1 = menuList.Where(s => !s.ParentId.HasValue).OrderBy(s => s.Index).ToList(); //获取一级菜单(顶部) for (int i = 0; i < menuList1.Count; i++) { var menuList2 = menuList.Where(s => s.ParentId == menuList1[i].Id).OrderBy(s => s.Index).ToList(); //获取二级菜单 for (int j = 0; j < menuList2.Count; j++) { menuList2[j].Children = menuList.Where(s => s.ParentId == menuList2[j].Id).OrderBy(s => s.Index).ToList(); //获取三级菜单 } menuList1[i].Children = menuList2; } loginViewModel.MenuInfoList = _mapper.Map <IList <Menu>, IList <MenuViewModel> >(menuList1); data.Success = true; data.Message = "登陆成功"; data.Response = loginViewModel; } else { data.Message = "该角色没有绑定菜单!"; } } else { data.Message = "该用户没有绑定角色!"; } } else { data.Message = "该用户不存在,请核实!"; } } } return(data); }