/// <summary> /// 获取无项目的设备 /// </summary> /// <param name="GroupId">组织编号</param> /// <param name="req">分页参数</param> /// <returns>返回无项目设备列表</returns> public async Task <BaseResponse> GetNoProjectDeviceAsync(string GroupId, BasePageRequest req) { var device = _dr.FindWithOnlineAndImages(a => a.GroupId == GroupId && a.ProjectId == null); int count = device.Count(); string OrderExpression = ""; if (string.IsNullOrEmpty(req.OrderBy)) { OrderExpression = "DeviceSn Asc"; } else { OrderExpression = string.Format("{0} {1}", req.OrderBy, req.OrderType); } var list = await device.OrderBy(OrderExpression).Skip((req.PageNo - 1) * req.PageSize).Take(req.PageSize).ToListAsync(); var dto = _mapper.Map <List <DeviceDataDto> >(list); var br = new BasePageResponse <List <DeviceDataDto> >(); br.Success = true; br.Message = "获取数据成功"; br.PageSize = req.PageSize; br.CurrentPage = req.PageNo; br.Count = count; br.TotalPage = (int)Math.Ceiling((decimal)count / req.PageSize); br.Data = dto; return(br); }
/// <summary> /// 获取用户 用 框架获取的例子 /// </summary> /// <returns></returns> public GetUserListResponse GetUserList(BasePageRequest request) { LogHelper.Info("获取用户"); var userList = _userRepository.Where(s => s.Id > 0).OrderByDescending(s => s.CreateTime).Skip((request.PageIndex - 1) * request.PageSize).Take(request.PageSize); GetUserListResponse result = new GetUserListResponse(); foreach (var item in userList) { //result.userListResponse.Add(new GetUserResponse() //{ // Id = item.Id, // Name = item.Name, // Account = item.Account, // CreateTime = item.CreateTime.ToString("yyyy-MM-dd HH:mm:ss"), // UpdateTime = item.UpdateTime.ToString("yyyy-MM-dd HH:mm:ss"), // PassWord = RSACryptionHelper.RSAEncrypt(item.PassWord), //}); var model = new GetUserResponse() { Id = item.Id, Name = item.Name, Account = item.Account, CreateTime = item.CreateTime.ToString("yyyy-MM-dd HH:mm:ss"), UpdateTime = item.UpdateTime.ToString("yyyy-MM-dd HH:mm:ss"), //PassWord = RSACryptionHelper.RSADecrypt(item.PassWord), }; result.userListResponse.Add(model); } return(result); }
public async Task <BaseResponse> GetSystemAccessory(int systemId, BasePageRequest req) { var query = _tsr.Find(a => a.SystemId == systemId); if (!string.IsNullOrWhiteSpace(req.Search)) { query = query.Where(a => a.Name.Contains(req.Search)); } int Count = query.Count(); string OrderExpression = ""; if (string.IsNullOrEmpty(req.OrderBy)) { OrderExpression = "Id Asc"; } else { OrderExpression = string.Format("{0} {1}", req.OrderBy, req.OrderType); } var data = await query.OrderBy(OrderExpression).Skip((req.PageNo - 1) * req.PageSize).Take(req.PageSize).ToListAsync(); var dtos = _mapper.Map <List <TypeSystemAccessoryDto> >(data); return(new BasePageResponse <List <TypeSystemAccessoryDto> > { Success = true, Message = "获取数据成功", Count = Count, CurrentPage = req.PageNo, PageSize = req.PageSize, TotalPage = (int)Math.Ceiling((decimal)Count / req.PageSize), Data = dtos }); }
public async Task <BaseResponse> GetRoles(string GroupId, BasePageRequest req) { BasePageResponse <List <RoleDataDto> > br = new BasePageResponse <List <RoleDataDto> >(); var g = _role.Find(a => a.GroupId == GroupId); if (!string.IsNullOrWhiteSpace(req.Search)) { g = g.Where(a => a.RoleName.Contains(req.Search) || a.Description.Contains(req.Search)); } int count = g.Count(); string OrderExpression = ""; if (string.IsNullOrEmpty(req.OrderBy)) { OrderExpression = "Id Asc"; //UserQuery = UserQuery.OrderBy(a => a.Id); } else { OrderExpression = string.Format("{0} {1}", req.OrderBy, req.OrderType); } var list = await g.OrderBy(OrderExpression).Skip((req.PageNo - 1) * req.PageSize).Take(req.PageSize).ToListAsync(); var dto = _mapper.Map <List <RoleDataDto> >(list); br.Success = true; br.Message = "获取数据成功"; br.PageSize = req.PageSize; br.CurrentPage = req.PageNo; br.Count = count; br.TotalPage = (int)Math.Ceiling((decimal)count / req.PageSize); br.Data = dto; return(br); }
public async Task <ActionResult <BaseResponse> > GetMySite(string GroupId, [FromQuery] BasePageRequest req) { var GId = User.Claims.FirstOrDefault(a => a.Type == "GroupId").Value; var isAdmin = User.Claims.FirstOrDefault(a => a.Type == "IsAdmin").Value.ToLower() == "true" ? true : false; //string Code = User.Claims.FirstOrDefault(a => a.Type == "Code").Value; //string Account = User.Claims.FirstOrDefault(a => a.Type == "Account").Value; string Roles = User.Claims.FirstOrDefault(a => a.Type == "Role").Value; if (GId != GroupId) { return(new BaseResponse { Success = false, Message = "输入的组织编号不正确" }); } var rm = await _ps.GetMySiteAsync(GroupId, Roles, isAdmin, req); return(rm); }
public async Task <ActionResult <BaseResponse> > GetMyDevice(string GroupId, [FromQuery] BasePageRequest req) { var GId = User.Claims.FirstOrDefault(a => a.Type == "GroupId").Value; var isAdmin = User.Claims.FirstOrDefault(a => a.Type == "IsAdmin").Value.ToLower() == "true" ? true : false; string Code = User.Claims.FirstOrDefault(a => a.Type == "Code").Value; string Account = User.Claims.FirstOrDefault(a => a.Type == "Account").Value; string Roles = User.Claims.FirstOrDefault(a => a.Type == "Role").Value; if (GroupId != GId) { if (!(isAdmin && Code == _config["Group"]))//超级管理员可以查看任何组织的全部设备 { return(Unauthorized("输入的组织编号不正确")); } } var rm = await _ds.GetMyDevice(GroupId, Roles, isAdmin, req); return(rm); }
public async Task <ActionResult <BaseResponse> > GetTypeArgument(int typeId, [FromQuery] BasePageRequest req) { //string user = User.Identity.Name; //if (string.IsNullOrWhiteSpace(user)) //{ // return Unauthorized("用户凭证缺失"); //} //UserMessage um = JsonConvert.DeserializeObject<UserMessage>(user); //string GroupId; //var ret = _ts.IsExist(a => a.Id == typeId, out GroupId); //if (!ret) //{ // return new BaseResponse { Success = false, Message = "输入的类型不存在" }; //} ////用户所在的组和超级管理员可以查看 //if (um.GroupId != GroupId || (!um.IsAdmin && um.Code != _config["Group"])) //{ // return Unauthorized("用户没有权限"); //} var rm = await _tas.GetTypeArgumentAsync(typeId, req); return(rm); }
public async Task <ActionResult <BaseResponse> > GetDeviceHarewareAsync(string GroupId, string DeviceSn, [FromQuery] BasePageRequest req) { var device = await _ds.IsExistCheck(a => a.DeviceSn == DeviceSn); if (!device.IsExist) { return(new BaseResponse { Success = false, Message = "输入的设备不存在" }); } string Account = User.Claims.FirstOrDefault(a => a.Type == "Account").Value; var rm = await _dhc.GetTypeHardwareConfigAsync(DeviceSn, req); return(rm); }
public async Task <BaseResponse> GetMyDevice(string GroupId, string roles, bool isAdmin, BasePageRequest req) { var device = _dr.FindWithOnlineAndImages(a => a.GroupId == GroupId); var sites = await _ps.GetMySitesIdAsync(GroupId, roles, isAdmin); device = device.Where(a => sites.Contains(a.ProjectId.Value)); if (req.Search != null && req.Search.Trim() != "") { device = device.Where(a => a.DeviceName.Contains(req.Search)); } int count = device.Count(); string OrderExpression = ""; if (string.IsNullOrEmpty(req.OrderBy)) { OrderExpression = "DeviceSn Asc"; } else { OrderExpression = string.Format("{0} {1}", req.OrderBy, req.OrderType); } var list = await device.OrderBy(OrderExpression).Skip((req.PageNo - 1) * req.PageSize).Take(req.PageSize).ToListAsync(); var dto = _mapper.Map <List <DeviceDataDto> >(list); var br = new BasePageResponse <List <DeviceDataDto> >(); br.Success = true; br.Message = "获取数据成功"; br.PageSize = req.PageSize; br.CurrentPage = req.PageNo; br.Count = count; br.TotalPage = (int)Math.Ceiling((decimal)count / req.PageSize); br.Data = dto; return(br); }
// GET: Base /// <summary> /// 获取用户列表 /// </summary> /// <param name="request"></param> /// <returns></returns> public ActionResult UserIndex(BasePageRequest request) { var userList = _baseService.GetUserList(request); return(View(userList)); }
public async Task <ActionResult <BaseResponse> > GetProjectDevices(string GroupId, int projectId, [FromQuery] BasePageRequest req) { var GId = User.Claims.FirstOrDefault(a => a.Type == "GroupId").Value; var isAdmin = User.Claims.FirstOrDefault(a => a.Type == "IsAdmin").Value.ToLower() == "true" ? true : false; string Code = User.Claims.FirstOrDefault(a => a.Type == "Code").Value; string Account = User.Claims.FirstOrDefault(a => a.Type == "Account").Value; string Roles = User.Claims.FirstOrDefault(a => a.Type == "Role").Value; var p = await _ps.GetProjectAsync(projectId); if (p == null) { return(new BaseResponse { Success = false, Message = "输入的场站不存在" }); } bool isSite = false; if (p.ProjectType == Model.ProjectType.Site) { isSite = true; } //验证权限 if (GroupId != GId) { if (!(isAdmin && Code == _config["Group"])) { return(Unauthorized("用户没有权限")); } } else { if (!isAdmin) { p.PathId = $"{p.PathId}/{projectId}"; var bAccess = await _rp.IsAuth(Roles, p.PathId, 0); if (!bAccess) { return(Unauthorized("用户没有权限查看")); } } } var rm = await _ds.GetProjectDeviceAsync(GroupId, projectId, isSite, req); return(rm); }
public async Task <BaseResponse> GetMySiteAsync(string GroupId, string roles, bool isAdmin, BasePageRequest req) { //获取用户所有的项目标识 var sites = await GetMySitesIdAsync(GroupId, roles, isAdmin); var project = _pr.FindWithImageAndDeviceAsync(a => a.GroupId == GroupId && sites.Contains(a.Id)); if (!string.IsNullOrWhiteSpace(req.Search)) { project = project.Where(a => a.Name.Contains(req.Search)); } int count = project.Count(); string OrderExpression = ""; if (string.IsNullOrEmpty(req.OrderBy)) { OrderExpression = "Id Asc"; } else { OrderExpression = string.Format("{0} {1}", req.OrderBy, req.OrderType); } var list = await project.OrderBy(OrderExpression).Skip((req.PageNo - 1) * req.PageSize).Take(req.PageSize).ToListAsync(); var dto = _mapper.Map <List <SiteDto> >(list); var br = new BasePageResponse <List <SiteDto> >(); br.Success = true; br.Message = "获取数据成功"; br.PageSize = req.PageSize; br.CurrentPage = req.PageNo; br.Count = count; br.TotalPage = (int)Math.Ceiling((decimal)count / req.PageSize); br.Data = dto; return(br); }
public async Task <BaseResponse> GetMyProjectAsync(string GroupId, string roles, bool isAdmin, BasePageRequest req) { //获取用户所有的项目标识 //var pids = await GetMyProjectIdSync(GroupId, roles, isAdmin); var pids = await GetMyTopProjectIdAsync(GroupId, roles, isAdmin); //var project = _pr.Find(a => a.GroupId == GroupId && pids.Contains(a.Id)); var project = _pr.FindWithImageAndChildAsync(a => a.GroupId == GroupId && pids.Contains(a.Id)); if (!string.IsNullOrWhiteSpace(req.Search)) { project = project.Where(a => a.Name.Contains(req.Search)); } int count = project.Count(); string OrderExpression = ""; if (string.IsNullOrEmpty(req.OrderBy)) { OrderExpression = "Id Asc"; } else { OrderExpression = string.Format("{0} {1}", req.OrderBy, req.OrderType); } var list = await project.OrderBy(OrderExpression).Skip((req.PageNo - 1) * req.PageSize).Take(req.PageSize).ToListAsync(); var dto = _mapper.Map <List <ProjectDto> >(list); foreach (var item in dto) { var sites = await GetProjectSitesIdAsync(item.Id); int num = await _dr.Find(a => sites.Contains(a.ProjectId.Value)).CountAsync(); item.DeviceCount = num; } //foreach (var item in list) //{ // var dto = _mapper.Map<ProjectDto>(item); // //if (item.Images.Count > 0) // //{ // // dto.Image = item.Images.OrderByDescending(a => a.Rank).FirstOrDefault().url; // //} // //dto.Image = item.Images.OrderByDescending(a => a.Rank).FirstOrDefault().url; // await GetChild(dto, item.Id); // dtos.Add(dto); //} //var dto = _mapper.Map<List<ProjectData>>(list); var br = new BasePageResponse <List <ProjectDto> >(); br.Success = true; br.Message = "获取数据成功"; br.PageSize = req.PageSize; br.CurrentPage = req.PageNo; br.Count = count; br.TotalPage = (int)Math.Ceiling((decimal)count / req.PageSize); br.Data = dto; return(br); }
///// <summary> ///// 获取项目或者场站的报警数据,需在Control中获取设备编号列表 /// </summary> /// <param name="Devices">设备序列号列表</param> /// <param name="begin">开始时间</param> /// <param name="end">结束时间</param> /// <param name="state">报警状态</param> /// <param name="req">分页基本信息</param> /// <returns>返回项目获取场站报警分页数据</returns> public async Task <BaseResponse> GetProjectWarnAsync(List <string> Devices, DateTime begin, DateTime end, bool state, BasePageRequest req) { var data = _warn.FindWithCodeAndType(a => Devices.Contains(a.DeviceSn) && a.Dt > begin && a.Dt < end && a.State == state); int count = data.Count(); if (!string.IsNullOrWhiteSpace(req.Search)) { data = data.Where(a => a.Code == req.Search); } string OrderExpression = ""; if (string.IsNullOrEmpty(req.OrderBy)) { OrderExpression = "Id Asc"; } else { OrderExpression = string.Format("{0} {1}", req.OrderBy, req.OrderType); } var ret = await data.OrderBy(OrderExpression).Skip((req.PageNo - 1) * req.PageSize).Take(req.PageSize).ToListAsync(); var dtos = _mapper.Map <List <WarnDto> >(ret); var br = new BasePageResponse <List <WarnDto> >(); br.Success = true; br.Message = "获取数据成功"; br.PageSize = req.PageSize; br.CurrentPage = req.PageNo; br.Count = count; br.TotalPage = (int)Math.Ceiling((decimal)count / req.PageSize); br.Data = dtos; return(br); }
public async Task <ActionResult <BaseResponse> > GetNoProjectDevice(string GroupId, [FromQuery] BasePageRequest req) { var GId = User.Claims.FirstOrDefault(a => a.Type == "GroupId").Value; var isAdmin = User.Claims.FirstOrDefault(a => a.Type == "IsAdmin").Value.ToLower() == "true" ? true : false; string Code = User.Claims.FirstOrDefault(a => a.Type == "Code").Value; string Account = User.Claims.FirstOrDefault(a => a.Type == "Account").Value; string Roles = User.Claims.FirstOrDefault(a => a.Type == "Role").Value; //验证权限,只有管理员才能查看无项目的设备 if (!isAdmin) { return(Unauthorized("只有管理员才有权限查看无项目的设备")); } else { if (GroupId != GId && Code != _config["Group"]) { return(Unauthorized("用户没有权限查看其他组织的设备")); } } var rm = await _ds.GetNoProjectDeviceAsync(GroupId, req); return(rm); }
public async Task <ActionResult <BaseResponse> > GetRoles(string GroupId, [FromQuery] BasePageRequest req) { var rm = await _rs.GetRoles(GroupId, req); return(rm); }
public async Task <ActionResult <BaseResponse> > GetPageAppVersion([FromQuery] BasePageRequest req) { var rm = await _app.GetPageAppVersionAsync(req); return(rm); }