Compare commits
No commits in common. "d4ac85c5257637612c3332750058f43527acdb64" and "3c257f11c1ac06e282c1686db9b399fbf9083677" have entirely different histories.
d4ac85c525
...
3c257f11c1
281
langguanApi.xml
281
langguanApi.xml
|
|
@ -125,16 +125,6 @@
|
||||||
</summary>
|
</summary>
|
||||||
<returns></returns>
|
<returns></returns>
|
||||||
</member>
|
</member>
|
||||||
<member name="M:langguanApi.Controllers.DeviceController.GetListByDeviceType(System.String,System.Int32,System.Int32,System.Int32)">
|
|
||||||
<summary>
|
|
||||||
按设备类型取设备列表 //1 voc,2 cems,3,tsp,4 video
|
|
||||||
</summary>
|
|
||||||
<param name="key">key</param>
|
|
||||||
<param name="pageSize"></param>
|
|
||||||
<param name="current"></param>
|
|
||||||
<param name="deviceType"></param>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:langguanApi.Controllers.HJ212Controller.Get(System.String)">
|
<member name="M:langguanApi.Controllers.HJ212Controller.Get(System.String)">
|
||||||
<summary>
|
<summary>
|
||||||
获取指定设备的历史数据
|
获取指定设备的历史数据
|
||||||
|
|
@ -205,52 +195,6 @@
|
||||||
</summary>
|
</summary>
|
||||||
<returns></returns>
|
<returns></returns>
|
||||||
</member>
|
</member>
|
||||||
<member name="T:langguanApi.Controllers.RoleController">
|
|
||||||
<summary>
|
|
||||||
角色 权限
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="M:langguanApi.Controllers.RoleController.Get(System.String)">
|
|
||||||
<summary>
|
|
||||||
获取角色详情
|
|
||||||
</summary>
|
|
||||||
<param name="id"></param>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:langguanApi.Controllers.RoleController.Add(langguanApi.Model.Entity.AddRoleDto)">
|
|
||||||
<summary>
|
|
||||||
添加角色
|
|
||||||
</summary>
|
|
||||||
<param name="role"></param>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:langguanApi.Controllers.RoleController.Update(langguanApi.Model.Entity.UpdateRoleDto)">
|
|
||||||
<summary>
|
|
||||||
update角色
|
|
||||||
</summary>
|
|
||||||
<param name="role"></param>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:langguanApi.Controllers.RoleController.Remove(System.Collections.Generic.IEnumerable{System.String})">
|
|
||||||
<summary>
|
|
||||||
删除角色
|
|
||||||
</summary>
|
|
||||||
<param name="ids"></param>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:langguanApi.Controllers.RoleController.List(langguanApi.Model.reqpage)">
|
|
||||||
<summary>
|
|
||||||
获取角色列表
|
|
||||||
</summary>
|
|
||||||
<param name="input"></param>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:langguanApi.Controllers.RoleController.GetAllrole">
|
|
||||||
<summary>
|
|
||||||
获取所有角色
|
|
||||||
</summary>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="T:langguanApi.Controllers.TransportController">
|
<member name="T:langguanApi.Controllers.TransportController">
|
||||||
<summary>
|
<summary>
|
||||||
清洁运输
|
清洁运输
|
||||||
|
|
@ -382,21 +326,6 @@
|
||||||
</summary>
|
</summary>
|
||||||
<param name="services"></param>
|
<param name="services"></param>
|
||||||
</member>
|
</member>
|
||||||
<member name="T:langguanApi.Extensions.WhereIfExtension">
|
|
||||||
<summary>
|
|
||||||
linq extension
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="M:langguanApi.Extensions.WhereIfExtension.AndAlso``1(System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Func{System.Linq.Expressions.Expression,System.Linq.Expressions.Expression,System.Linq.Expressions.BinaryExpression})">
|
|
||||||
<summary>
|
|
||||||
合并表达式以及参数
|
|
||||||
</summary>
|
|
||||||
<typeparam name="T"></typeparam>
|
|
||||||
<param name="expr1"></param>
|
|
||||||
<param name="expr2"></param>
|
|
||||||
<param name="func"></param>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="F:langguanApi.Middleware.CustomerExceptionFilter._logger">
|
<member name="F:langguanApi.Middleware.CustomerExceptionFilter._logger">
|
||||||
<summary>
|
<summary>
|
||||||
日志
|
日志
|
||||||
|
|
@ -626,11 +555,6 @@
|
||||||
设备类型,1 voc,2 cems,3,tsp,4 video
|
设备类型,1 voc,2 cems,3,tsp,4 video
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="P:langguanApi.Model.Device.VideoUrl">
|
|
||||||
<summary>
|
|
||||||
视频流地址
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="T:langguanApi.Model.Dto.HJ212_2017">
|
<member name="T:langguanApi.Model.Dto.HJ212_2017">
|
||||||
<summary>
|
<summary>
|
||||||
HJ212_2017
|
HJ212_2017
|
||||||
|
|
@ -760,91 +684,6 @@
|
||||||
国几排放量
|
国几排放量
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="T:langguanApi.Model.Entity.Menu">
|
|
||||||
<summary>
|
|
||||||
菜单实体类
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="P:langguanApi.Model.Entity.Menu.Name">
|
|
||||||
<summary>
|
|
||||||
菜单名称
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="P:langguanApi.Model.Entity.Menu.Url">
|
|
||||||
<summary>
|
|
||||||
菜单URL
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="P:langguanApi.Model.Entity.Menu.Sort">
|
|
||||||
<summary>
|
|
||||||
排序
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="P:langguanApi.Model.Entity.Menu.ParentId">
|
|
||||||
<summary>
|
|
||||||
父菜单ID,一级菜单为null
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="P:langguanApi.Model.Entity.AddMenuDto.Name">
|
|
||||||
<summary>
|
|
||||||
菜单名称
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="P:langguanApi.Model.Entity.AddMenuDto.Url">
|
|
||||||
<summary>
|
|
||||||
菜单URL
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="P:langguanApi.Model.Entity.AddMenuDto.Sort">
|
|
||||||
<summary>
|
|
||||||
排序
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="P:langguanApi.Model.Entity.AddMenuDto.ParentId">
|
|
||||||
<summary>
|
|
||||||
父菜单ID,一级菜单为null
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="P:langguanApi.Model.Entity.Role.RoleName">
|
|
||||||
<summary>
|
|
||||||
角色名称
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="P:langguanApi.Model.Entity.Role.RoleDescription">
|
|
||||||
<summary>
|
|
||||||
角色描述
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="P:langguanApi.Model.Entity.AddRoleDto.RoleName">
|
|
||||||
<summary>
|
|
||||||
角色名称
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="P:langguanApi.Model.Entity.AddRoleDto.RoleDescription">
|
|
||||||
<summary>
|
|
||||||
角色描述
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="T:langguanApi.Model.Entity.UpdateRoleDto">
|
|
||||||
<summary>
|
|
||||||
更新角色DTO
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="P:langguanApi.Model.Entity.UpdateRoleDto.RoleId">
|
|
||||||
<summary>
|
|
||||||
角色ID
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="T:langguanApi.Model.Entity.AddRoleMenuDTO">
|
|
||||||
<summary>
|
|
||||||
DTO for adding role menu
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="T:langguanApi.Model.Entity.UpdateRoleMenuDTO">
|
|
||||||
<summary>
|
|
||||||
DTO for updating role menu
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="T:langguanApi.Model.Entity.UserEntity">
|
<member name="T:langguanApi.Model.Entity.UserEntity">
|
||||||
<summary>
|
<summary>
|
||||||
用户实体
|
用户实体
|
||||||
|
|
@ -870,46 +709,6 @@
|
||||||
邮箱
|
邮箱
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
<member name="P:langguanApi.Model.Entity.UserEntity.Phone">
|
|
||||||
<summary>
|
|
||||||
手机号
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="T:langguanApi.Model.Entity.AddDto">
|
|
||||||
<summary>
|
|
||||||
添加用户DTO
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="P:langguanApi.Model.Entity.AddDto.Username">
|
|
||||||
<summary>
|
|
||||||
用户名
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="P:langguanApi.Model.Entity.AddDto.Password">
|
|
||||||
<summary>
|
|
||||||
密码 md5加密
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="P:langguanApi.Model.Entity.AddDto.roleId">
|
|
||||||
<summary>
|
|
||||||
角色id
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="P:langguanApi.Model.Entity.AddDto.Email">
|
|
||||||
<summary>
|
|
||||||
邮箱
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="T:langguanApi.Model.Entity.UpdateDto">
|
|
||||||
<summary>
|
|
||||||
更新用户DTO
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="P:langguanApi.Model.Entity.UpdateDto.Id">
|
|
||||||
<summary>
|
|
||||||
用户id
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="T:langguanApi.Model.FactorCode">
|
<member name="T:langguanApi.Model.FactorCode">
|
||||||
<summary>
|
<summary>
|
||||||
污染物因子编码
|
污染物因子编码
|
||||||
|
|
@ -1454,20 +1253,6 @@
|
||||||
<param name="id"></param>
|
<param name="id"></param>
|
||||||
<returns></returns>
|
<returns></returns>
|
||||||
</member>
|
</member>
|
||||||
<member name="M:langguanApi.Service.BaseService`1.BatchRemoveAsync(System.Collections.Generic.IEnumerable{System.String})">
|
|
||||||
<summary>
|
|
||||||
批量删除
|
|
||||||
</summary>
|
|
||||||
<param name="ids"></param>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:langguanApi.Service.BaseService`1.BatchRemoveAsync(System.Linq.Expressions.Expression{System.Func{`0,System.Boolean}})">
|
|
||||||
<summary>
|
|
||||||
批量删除
|
|
||||||
</summary>
|
|
||||||
<param name="expression"></param>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:langguanApi.Service.BaseService`1.GetListWithExp(System.Linq.Expressions.Expression{System.Func{`0,System.Boolean}})">
|
<member name="M:langguanApi.Service.BaseService`1.GetListWithExp(System.Linq.Expressions.Expression{System.Func{`0,System.Boolean}})">
|
||||||
<summary>
|
<summary>
|
||||||
表达式取数据
|
表达式取数据
|
||||||
|
|
@ -1559,16 +1344,6 @@
|
||||||
</summary>
|
</summary>
|
||||||
<returns></returns>
|
<returns></returns>
|
||||||
</member>
|
</member>
|
||||||
<member name="M:langguanApi.Service.DeviceService.GetDeviceListByTypes(System.String,System.Int32,System.Int32,System.Int32)">
|
|
||||||
<summary>
|
|
||||||
分页取设备
|
|
||||||
</summary>
|
|
||||||
<param name="key"></param>
|
|
||||||
<param name="pageSize"></param>
|
|
||||||
<param name="current"></param>
|
|
||||||
<param name="deviceType"></param>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:langguanApi.Service.DeviceService.GetPage(langguanApi.Model.reqpage)">
|
<member name="M:langguanApi.Service.DeviceService.GetPage(langguanApi.Model.reqpage)">
|
||||||
<summary>
|
<summary>
|
||||||
分页取数据
|
分页取数据
|
||||||
|
|
@ -1799,62 +1574,6 @@
|
||||||
<param name="ip"></param>
|
<param name="ip"></param>
|
||||||
<returns></returns>
|
<returns></returns>
|
||||||
</member>
|
</member>
|
||||||
<member name="M:langguanApi.Service.RoleMenuServie.GetByRoleId(System.String)">
|
|
||||||
<summary>
|
|
||||||
根据角色ID获取角色菜单
|
|
||||||
</summary>
|
|
||||||
<param name="roleId"></param>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:langguanApi.Service.RoleMenuServie.AddRoleMenu(langguanApi.Model.Entity.AddRoleMenuDTO)">
|
|
||||||
<summary>
|
|
||||||
表中添加角色菜单
|
|
||||||
</summary>
|
|
||||||
<param name="input"></param>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:langguanApi.Service.RoleMenuServie.UpdateRoleMenu(langguanApi.Model.Entity.UpdateRoleMenuDTO)">
|
|
||||||
<summary>
|
|
||||||
更新角色菜单
|
|
||||||
</summary>
|
|
||||||
<param name="input"></param>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:langguanApi.Service.RoleService.Add(langguanApi.Model.Entity.AddRoleDto)">
|
|
||||||
<summary>
|
|
||||||
新增角色
|
|
||||||
</summary>
|
|
||||||
<param name="role"></param>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:langguanApi.Service.RoleService.GetRoleAndMenu(System.String)">
|
|
||||||
<summary>
|
|
||||||
获取角色及菜单
|
|
||||||
</summary>
|
|
||||||
<param name="roleId"></param>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:langguanApi.Service.RoleService.Remove(System.Collections.Generic.IEnumerable{System.String})">
|
|
||||||
<summary>
|
|
||||||
删除角色
|
|
||||||
</summary>
|
|
||||||
<param name="ids"></param>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:langguanApi.Service.RoleService.update(langguanApi.Model.Entity.UpdateRoleDto)">
|
|
||||||
<summary>
|
|
||||||
更新角色
|
|
||||||
</summary>
|
|
||||||
<param name="role"></param>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:langguanApi.Service.RoleService.GetPage(langguanApi.Model.reqpage)">
|
|
||||||
<summary>
|
|
||||||
分页取数据
|
|
||||||
</summary>
|
|
||||||
<param name="input"></param>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="T:langguanApi.Service.TransportService">
|
<member name="T:langguanApi.Service.TransportService">
|
||||||
<summary>
|
<summary>
|
||||||
TransportService 运输服务
|
TransportService 运输服务
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,4 @@
|
||||||
using Amazon.Runtime.Internal.Auth;
|
using langguanApi.Model;
|
||||||
using langguanApi.Model;
|
|
||||||
using langguanApi.Model.Dto;
|
using langguanApi.Model.Dto;
|
||||||
using langguanApi.Service;
|
using langguanApi.Service;
|
||||||
using Microsoft.AspNetCore.Mvc;
|
using Microsoft.AspNetCore.Mvc;
|
||||||
|
|
@ -81,22 +80,8 @@ namespace langguanApi.Controllers
|
||||||
[HttpGet]
|
[HttpGet]
|
||||||
public async Task<IActionResult> GetDeviceTypes()
|
public async Task<IActionResult> GetDeviceTypes()
|
||||||
{
|
{
|
||||||
var result = await _deviceService.GetDeviceTypes();
|
var result=await _deviceService.GetDeviceTypes();
|
||||||
return Ok(new ApiResult() { code = 0, data = result });
|
return Ok(new ApiResult() { code = 0, data = result });
|
||||||
}
|
}
|
||||||
/// <summary>
|
|
||||||
/// 按设备类型取设备列表 //1 voc,2 cems,3,tsp,4 video
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="key">key</param>
|
|
||||||
/// <param name="pageSize"></param>
|
|
||||||
/// <param name="current"></param>
|
|
||||||
/// <param name="deviceType"></param>
|
|
||||||
/// <returns></returns>
|
|
||||||
[HttpGet]
|
|
||||||
public async Task<IActionResult> GetListByDeviceType(string key="", int pageSize = 10, int current = 1, int deviceType = 1)
|
|
||||||
{
|
|
||||||
var result = await _deviceService.GetDeviceListByTypes(key, pageSize, current, deviceType);
|
|
||||||
return Ok(result);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,96 +1,22 @@
|
||||||
using langguanApi.Model;
|
using langguanApi.Model.Dto.SystemConfigurationDto;
|
||||||
using langguanApi.Model.Entity;
|
|
||||||
using langguanApi.Model.Dto.SystemConfigurationDto;
|
|
||||||
using langguanApi.Service;
|
using langguanApi.Service;
|
||||||
using Microsoft.AspNetCore.Http;
|
|
||||||
using Microsoft.AspNetCore.Mvc;
|
using Microsoft.AspNetCore.Mvc;
|
||||||
using System.Threading.Tasks;
|
|
||||||
|
|
||||||
namespace langguanApi.Controllers
|
namespace langguanApi.Controllers
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 角色 权限
|
/// 角色
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[Route("api/[controller]")]
|
[Route("api/[controller]")]
|
||||||
[ApiController]
|
[ApiController]
|
||||||
public class RoleController : ControllerBase
|
public class RoleController : ControllerBase
|
||||||
{
|
{
|
||||||
public readonly RoleService _roleService;
|
private RoleService _roleService;
|
||||||
public RoleController(RoleService roleService)
|
public RoleController(RoleService roleService)
|
||||||
{
|
{
|
||||||
_roleService = roleService;
|
_roleService = roleService;
|
||||||
}
|
}
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 获取角色详情
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="id"></param>
|
|
||||||
/// <returns></returns>
|
|
||||||
[HttpGet("get")]
|
|
||||||
public async Task<IActionResult> Get(string id)
|
|
||||||
{
|
|
||||||
var role = await _roleService.GetRoleAndMenu(id);
|
|
||||||
return Ok(role);
|
|
||||||
}
|
|
||||||
/// <summary>
|
|
||||||
/// 添加角色
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="role"></param>
|
|
||||||
/// <returns></returns>
|
|
||||||
[HttpPost("add")]
|
|
||||||
public async Task<IActionResult> Add([FromBody] AddRoleDto role)
|
|
||||||
{
|
|
||||||
var result = await _roleService.Add(role);
|
|
||||||
return Ok(result);
|
|
||||||
}
|
|
||||||
/// <summary>
|
|
||||||
/// update角色
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="role"></param>
|
|
||||||
/// <returns></returns>
|
|
||||||
[HttpPut("update")]
|
|
||||||
public async Task<IActionResult> Update([FromBody] UpdateRoleDto role)
|
|
||||||
{
|
|
||||||
var result = await _roleService.update(role);
|
|
||||||
return Ok(result);
|
|
||||||
}
|
|
||||||
/// <summary>
|
|
||||||
/// 删除角色
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="ids"></param>
|
|
||||||
/// <returns></returns>
|
|
||||||
[HttpDelete("remove")]
|
|
||||||
public async Task<IActionResult> Remove(IEnumerable<string> ids)
|
|
||||||
{
|
|
||||||
var result = await _roleService.Remove(ids);
|
|
||||||
return Ok(result);
|
|
||||||
}
|
|
||||||
/// <summary>
|
|
||||||
/// 获取角色列表
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="input"></param>
|
|
||||||
/// <returns></returns>
|
|
||||||
[HttpGet("list")]
|
|
||||||
public async Task<IActionResult> List([FromQuery] reqpage input)
|
|
||||||
{
|
|
||||||
var roles = await _roleService.GetPager(input);
|
|
||||||
return Ok(roles);
|
|
||||||
}
|
|
||||||
/// <summary>
|
|
||||||
/// 获取所有角色
|
|
||||||
/// </summary>
|
|
||||||
/// <returns></returns>
|
|
||||||
[HttpGet("all")]
|
|
||||||
public async Task<IActionResult> GetAllrole()
|
|
||||||
{
|
|
||||||
var roles = await _roleService.GetAsync();
|
|
||||||
return Ok(new ApiResult()
|
|
||||||
{
|
|
||||||
code = 0,
|
|
||||||
data = roles.
|
|
||||||
Select(s => new { s.Id, s.RoleName })
|
|
||||||
});
|
|
||||||
}
|
|
||||||
/// <summary>
|
|
||||||
///新增角色
|
///新增角色
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="input"></param>
|
/// <param name="input"></param>
|
||||||
|
|
|
||||||
|
|
@ -1,72 +0,0 @@
|
||||||
using System.Linq.Expressions;
|
|
||||||
|
|
||||||
namespace langguanApi.Extensions
|
|
||||||
{
|
|
||||||
/// <summary>
|
|
||||||
/// linq extension
|
|
||||||
/// </summary>
|
|
||||||
public static class WhereIfExtension
|
|
||||||
{
|
|
||||||
public static IQueryable<T> WhereIf<T>(this IQueryable<T> source, bool condition, Expression<Func<T, bool>> predicate)
|
|
||||||
{
|
|
||||||
return condition ? source.Where(predicate) : source;
|
|
||||||
}
|
|
||||||
public static IQueryable<T> WhereIf<T>(this IQueryable<T> source, Expression<Func<T, int, bool>> predicate, bool condition)
|
|
||||||
{
|
|
||||||
return condition ? source.Where(predicate) : source;
|
|
||||||
}
|
|
||||||
public static IEnumerable<T> WhereIf<T>(this IEnumerable<T> source, bool condition, Func<T, bool> predicate)
|
|
||||||
{
|
|
||||||
return condition ? source.Where(predicate) : source;
|
|
||||||
}
|
|
||||||
public static Expression<Func<T, bool>> And<T>(
|
|
||||||
this Expression<Func<T, bool>> first,
|
|
||||||
Expression<Func<T, bool>> second)
|
|
||||||
{
|
|
||||||
return first.AndAlso<T>(second, Expression.AndAlso);
|
|
||||||
}
|
|
||||||
/// <summary>
|
|
||||||
/// 合并表达式以及参数
|
|
||||||
/// </summary>
|
|
||||||
/// <typeparam name="T"></typeparam>
|
|
||||||
/// <param name="expr1"></param>
|
|
||||||
/// <param name="expr2"></param>
|
|
||||||
/// <param name="func"></param>
|
|
||||||
/// <returns></returns>
|
|
||||||
private static Expression<Func<T, bool>> AndAlso<T>(
|
|
||||||
this Expression<Func<T, bool>> expr1,
|
|
||||||
Expression<Func<T, bool>> expr2,
|
|
||||||
Func<Expression, Expression, BinaryExpression> func)
|
|
||||||
{
|
|
||||||
var parameter = Expression.Parameter(typeof(T));
|
|
||||||
|
|
||||||
var leftVisitor = new ReplaceExpressionVisitor(expr1.Parameters[0], parameter);
|
|
||||||
var left = leftVisitor.Visit(expr1.Body);
|
|
||||||
|
|
||||||
var rightVisitor = new ReplaceExpressionVisitor(expr2.Parameters[0], parameter);
|
|
||||||
var right = rightVisitor.Visit(expr2.Body);
|
|
||||||
|
|
||||||
return Expression.Lambda<Func<T, bool>>(
|
|
||||||
func(left, right), parameter);
|
|
||||||
|
|
||||||
}
|
|
||||||
private class ReplaceExpressionVisitor
|
|
||||||
: ExpressionVisitor
|
|
||||||
{
|
|
||||||
private readonly Expression _oldValue;
|
|
||||||
private readonly Expression _newValue;
|
|
||||||
|
|
||||||
public ReplaceExpressionVisitor(Expression oldValue, Expression newValue)
|
|
||||||
{
|
|
||||||
_oldValue = oldValue;
|
|
||||||
_newValue = newValue;
|
|
||||||
}
|
|
||||||
public override Expression Visit(Expression node)
|
|
||||||
{
|
|
||||||
if (node == _oldValue)
|
|
||||||
return _newValue;
|
|
||||||
return base.Visit(node);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
@ -21,20 +21,15 @@
|
||||||
/// 设备类型,1 voc,2 cems,3,tsp,4 video
|
/// 设备类型,1 voc,2 cems,3,tsp,4 video
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public int DeviceType { get; set; }
|
public int DeviceType { get; set; }
|
||||||
/// <summary>
|
|
||||||
/// 视频流地址
|
|
||||||
/// </summary>
|
|
||||||
public string VideoUrl { get; set; }
|
|
||||||
}
|
}
|
||||||
public class DeviceAddDto
|
public class DeviceAddDto
|
||||||
{
|
{
|
||||||
|
|
||||||
public string deviceMN { get; set; }
|
public string deviceMN { get; set; }
|
||||||
public string Ip { get; set; }
|
public string Ip { get; set; }
|
||||||
public double lng { get; set; }
|
public double lng { get; set; }
|
||||||
public double lat { get; set; }
|
public double lat { get; set; }
|
||||||
public string NickName { get; set; }
|
public string NickName { get; set; }
|
||||||
public int DeviceType { get; set; }
|
|
||||||
public string VideoUrl { get; set; }
|
|
||||||
}
|
}
|
||||||
public class DeviceUpdateDto
|
public class DeviceUpdateDto
|
||||||
{
|
{
|
||||||
|
|
@ -42,6 +37,5 @@
|
||||||
public string NickName { get; set; }
|
public string NickName { get; set; }
|
||||||
public string OrgId { get; set; }
|
public string OrgId { get; set; }
|
||||||
public int DeviceType { get; set; }
|
public int DeviceType { get; set; }
|
||||||
public string VideoUrl { get; set; }
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -18,12 +18,11 @@
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 角色id
|
/// 角色id
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public string roleId { get; set; }
|
public int roleId { get; set; }
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 邮箱
|
/// 邮箱
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public string Email { get; set; }
|
public string Email { get; set; }
|
||||||
public string Phone { get; set; }
|
|
||||||
}
|
}
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 用户更新
|
/// 用户更新
|
||||||
|
|
|
||||||
|
|
@ -1,48 +0,0 @@
|
||||||
namespace langguanApi.Model.Entity
|
|
||||||
{
|
|
||||||
/// <summary>
|
|
||||||
/// 菜单实体类
|
|
||||||
/// </summary>
|
|
||||||
public class Menu : BaseModel
|
|
||||||
{
|
|
||||||
/// <summary>
|
|
||||||
/// 菜单名称
|
|
||||||
/// </summary>
|
|
||||||
public string Name { get; set; }
|
|
||||||
/// <summary>
|
|
||||||
/// 菜单URL
|
|
||||||
/// </summary>
|
|
||||||
public string Url { get; set; }
|
|
||||||
/// <summary>
|
|
||||||
/// 排序
|
|
||||||
/// </summary>
|
|
||||||
public int Sort { get; set; }
|
|
||||||
/// <summary>
|
|
||||||
/// 父菜单ID,一级菜单为null
|
|
||||||
/// </summary>
|
|
||||||
public string ParentId { get; set; }
|
|
||||||
}
|
|
||||||
public class AddMenuDto
|
|
||||||
{
|
|
||||||
/// <summary>
|
|
||||||
/// 菜单名称
|
|
||||||
/// </summary>
|
|
||||||
public string Name { get; set; }
|
|
||||||
/// <summary>
|
|
||||||
/// 菜单URL
|
|
||||||
/// </summary>
|
|
||||||
public string Url { get; set; }
|
|
||||||
/// <summary>
|
|
||||||
/// 排序
|
|
||||||
/// </summary>
|
|
||||||
public int Sort { get; set; }
|
|
||||||
/// <summary>
|
|
||||||
/// 父菜单ID,一级菜单为null
|
|
||||||
/// </summary>
|
|
||||||
public string ParentId { get; set; }
|
|
||||||
}
|
|
||||||
public class UpdateMenuDto : AddMenuDto
|
|
||||||
{
|
|
||||||
public string Id { get; set; }
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
@ -1,35 +0,0 @@
|
||||||
namespace langguanApi.Model.Entity
|
|
||||||
{
|
|
||||||
public class Role : BaseModel
|
|
||||||
{
|
|
||||||
/// <summary>
|
|
||||||
/// 角色名称
|
|
||||||
/// </summary>
|
|
||||||
public string RoleName { get; set; }
|
|
||||||
/// <summary>
|
|
||||||
/// 角色描述
|
|
||||||
/// </summary>
|
|
||||||
public string RoleDescription { get; set; }
|
|
||||||
}
|
|
||||||
public class AddRoleDto
|
|
||||||
{
|
|
||||||
/// <summary>
|
|
||||||
/// 角色名称
|
|
||||||
/// </summary>
|
|
||||||
public string RoleName { get; set; }
|
|
||||||
/// <summary>
|
|
||||||
/// 角色描述
|
|
||||||
/// </summary>
|
|
||||||
public string RoleDescription { get; set; }
|
|
||||||
}
|
|
||||||
/// <summary>
|
|
||||||
/// 更新角色DTO
|
|
||||||
/// </summary>
|
|
||||||
public class UpdateRoleDto: AddRoleDto
|
|
||||||
{
|
|
||||||
/// <summary>
|
|
||||||
/// 角色ID
|
|
||||||
/// </summary>
|
|
||||||
public int RoleId { get; set; }
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
@ -1,24 +0,0 @@
|
||||||
namespace langguanApi.Model.Entity
|
|
||||||
{
|
|
||||||
public class RoleMenu : BaseModel
|
|
||||||
{
|
|
||||||
public string RoleId { get; set; }
|
|
||||||
public string MenuId { get; set; }
|
|
||||||
}
|
|
||||||
/// <summary>
|
|
||||||
/// DTO for adding role menu
|
|
||||||
/// </summary>
|
|
||||||
public class AddRoleMenuDTO
|
|
||||||
{
|
|
||||||
public string RoleId { get; set; }
|
|
||||||
public List<string> MenuIds { get; set; }
|
|
||||||
}
|
|
||||||
/// <summary>
|
|
||||||
/// DTO for updating role menu
|
|
||||||
/// </summary>
|
|
||||||
public class UpdateRoleMenuDTO
|
|
||||||
{
|
|
||||||
public string RoleId { get; set; }
|
|
||||||
public List<string> MenuIds { get; set; }
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
@ -19,35 +19,7 @@ namespace langguanApi.Model.Entity
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 角色id
|
/// 角色id
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public string roleId { get; set; }
|
[BsonRepresentation(BsonType.ObjectId)]
|
||||||
/// <summary>
|
|
||||||
/// 邮箱
|
|
||||||
/// </summary>
|
|
||||||
public string Email { get; set; }
|
|
||||||
/// <summary>
|
|
||||||
/// 手机号
|
|
||||||
/// </summary>
|
|
||||||
public string Phone { get; set; }
|
|
||||||
|
|
||||||
//是否管理员 0表示不是管理员 1表示管理员
|
|
||||||
public byte IsAdmin { get; set; }
|
|
||||||
}
|
|
||||||
/// <summary>
|
|
||||||
/// 添加用户DTO
|
|
||||||
/// </summary>
|
|
||||||
public class AddDto
|
|
||||||
{
|
|
||||||
/// <summary>
|
|
||||||
/// 用户名
|
|
||||||
/// </summary>
|
|
||||||
public string Username { get; set; }
|
|
||||||
/// <summary>
|
|
||||||
/// 密码 md5加密
|
|
||||||
/// </summary>
|
|
||||||
public string Password { get; set; }
|
|
||||||
/// <summary>
|
|
||||||
/// 角色id
|
|
||||||
/// </summary>
|
|
||||||
public string roleId { get; set; }
|
public string roleId { get; set; }
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 邮箱
|
/// 邮箱
|
||||||
|
|
@ -94,15 +66,4 @@ namespace langguanApi.Model.Entity
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public byte IsEnable { get; set; }
|
public byte IsEnable { get; set; }
|
||||||
}
|
}
|
||||||
/// <summary>
|
|
||||||
/// 更新用户DTO
|
|
||||||
/// </summary>
|
|
||||||
public class UpdateDto:AddDto
|
|
||||||
{
|
|
||||||
/// <summary>
|
|
||||||
/// 用户id
|
|
||||||
/// </summary>
|
|
||||||
public string Id { get; set; }
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -136,25 +136,7 @@ namespace langguanApi.Service
|
||||||
{
|
{
|
||||||
await _collection.DeleteOneAsync(T => T.Id == id);
|
await _collection.DeleteOneAsync(T => T.Id == id);
|
||||||
}
|
}
|
||||||
/// <summary>
|
|
||||||
/// 批量删除
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="ids"></param>
|
|
||||||
/// <returns></returns>
|
|
||||||
public async Task BatchRemoveAsync(IEnumerable<string> ids)
|
|
||||||
{
|
|
||||||
var filter = Builders<T>.Filter.In(s => s.Id, ids);
|
|
||||||
await _collection.DeleteManyAsync(filter);
|
|
||||||
}
|
|
||||||
/// <summary>
|
|
||||||
/// 批量删除
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="expression"></param>
|
|
||||||
/// <returns></returns>
|
|
||||||
public async Task BatchRemoveAsync(Expression<Func<T, bool>> expression)
|
|
||||||
{
|
|
||||||
await _collection.DeleteManyAsync(expression);
|
|
||||||
}
|
|
||||||
#endregion
|
#endregion
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 表达式取数据
|
/// 表达式取数据
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,4 @@
|
||||||
using langguanApi.Extensions;
|
using langguanApi.Extensions.AutoDI;
|
||||||
using langguanApi.Extensions.AutoDI;
|
|
||||||
using langguanApi.Model;
|
using langguanApi.Model;
|
||||||
using langguanApi.Model.Dto;
|
using langguanApi.Model.Dto;
|
||||||
using Mapster;
|
using Mapster;
|
||||||
|
|
@ -26,8 +25,12 @@ namespace langguanApi.Service
|
||||||
return new ApiResult { code = 1, msg = $"已经存在名称为:{input.NickName}" };
|
return new ApiResult { code = 1, msg = $"已经存在名称为:{input.NickName}" };
|
||||||
}
|
}
|
||||||
var entity = input.Adapt<Device>();
|
var entity = input.Adapt<Device>();
|
||||||
await base.CreateAsync(entity);
|
if (entity != null)
|
||||||
return new ApiResult { code = 0, msg = "" };
|
{
|
||||||
|
await base.CreateAsync(entity);
|
||||||
|
return new ApiResult { code = 0, msg = "" };
|
||||||
|
}
|
||||||
|
return new ApiResult { code = -1, msg = "" }; ;
|
||||||
}
|
}
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 是否存在
|
/// 是否存在
|
||||||
|
|
@ -100,7 +103,7 @@ namespace langguanApi.Service
|
||||||
/// 获取设备类型
|
/// 获取设备类型
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
public Task<Dictionary<int, string>> GetDeviceTypes()
|
public Task<Dictionary<int, string>> GetDeviceTypes()
|
||||||
{
|
{
|
||||||
//1 voc,2 cems,3,tsp,4 video
|
//1 voc,2 cems,3,tsp,4 video
|
||||||
Dictionary<int, string> dic = new Dictionary<int, string>
|
Dictionary<int, string> dic = new Dictionary<int, string>
|
||||||
|
|
@ -112,40 +115,19 @@ namespace langguanApi.Service
|
||||||
};
|
};
|
||||||
return Task.FromResult(dic);
|
return Task.FromResult(dic);
|
||||||
}
|
}
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 分页取设备
|
/// 分页取数据
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="key"></param>
|
/// <param name="input"></param>
|
||||||
/// <param name="pageSize"></param>
|
/// <returns></returns>
|
||||||
/// <param name="current"></param>
|
public async Task<object> GetPage(reqpage input)
|
||||||
/// <param name="deviceType"></param>
|
{
|
||||||
/// <returns></returns>
|
Expression<Func<Device, bool>> exp = filter => filter.NickName.Contains(input.key) && filter.IsDelete == false;
|
||||||
public async Task<ApiResult> GetDeviceListByTypes(string key, int pageSize = 10, int current = 1, int deviceType = 1)
|
return await base.GetPager(new ReqPaing()
|
||||||
{
|
{
|
||||||
Expression<Func<Device, bool>> exp = filter => filter.IsDelete == false && filter.DeviceType == deviceType;
|
pageSize = input.pageSize,
|
||||||
if (!string.IsNullOrEmpty(key))
|
current = input.current
|
||||||
{
|
}, exp);
|
||||||
exp = exp.And(filter => filter.NickName.Contains(key));
|
|
||||||
}
|
|
||||||
return await base.GetPager(new ReqPaing()
|
|
||||||
{
|
|
||||||
pageSize = pageSize,
|
|
||||||
current = current
|
|
||||||
}, exp);
|
|
||||||
}
|
|
||||||
/// <summary>
|
|
||||||
/// 分页取数据
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="input"></param>
|
|
||||||
/// <returns></returns>
|
|
||||||
public async Task<object> GetPage(reqpage input)
|
|
||||||
{
|
|
||||||
Expression<Func<Device, bool>> exp = filter => filter.NickName.Contains(input.key) && filter.IsDelete == false;
|
|
||||||
return await base.GetPager(new ReqPaing()
|
|
||||||
{
|
|
||||||
pageSize = input.pageSize,
|
|
||||||
current = input.current
|
|
||||||
}, exp);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,34 +0,0 @@
|
||||||
using langguanApi.Extensions.AutoDI;
|
|
||||||
using langguanApi.Model;
|
|
||||||
using langguanApi.Model.Entity;
|
|
||||||
using Mapster;
|
|
||||||
using Microsoft.AspNetCore.Mvc.ApiExplorer;
|
|
||||||
using System.Linq.Expressions;
|
|
||||||
|
|
||||||
namespace langguanApi.Service
|
|
||||||
{
|
|
||||||
[ServiceInjection(InjectionType.Transient)]
|
|
||||||
public class MenuService : BaseService<Menu>
|
|
||||||
{
|
|
||||||
public MenuService(IConfiguration config) : base(config, nameof(Menu))
|
|
||||||
{
|
|
||||||
}
|
|
||||||
public async Task<List<Menu>> GetMenusByParentId(string parentId)
|
|
||||||
{
|
|
||||||
Expression<Func<Menu, bool>> exp = filter => filter.IsDelete == false && filter.ParentId == parentId;
|
|
||||||
return (await base.GetListWithExp(exp)).OrderBy(x => x.Sort).ToList();
|
|
||||||
}
|
|
||||||
public async Task<ApiResult> AddMenu(AddMenuDto menu)
|
|
||||||
{
|
|
||||||
var entity = menu.Adapt<Menu>();
|
|
||||||
await base.CreateAsync(entity);
|
|
||||||
return new ApiResult();
|
|
||||||
}
|
|
||||||
public async Task<ApiResult> UpdateMenu(UpdateMenuDto menu)
|
|
||||||
{
|
|
||||||
var entity = menu.Adapt<Menu>();
|
|
||||||
await base.UpdateAsync(entity.Id, entity);
|
|
||||||
return new ApiResult();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
@ -1,64 +0,0 @@
|
||||||
using langguanApi.Extensions.AutoDI;
|
|
||||||
using langguanApi.Model;
|
|
||||||
using langguanApi.Model.Entity;
|
|
||||||
using System.Linq.Expressions;
|
|
||||||
|
|
||||||
namespace langguanApi.Service
|
|
||||||
{
|
|
||||||
[ServiceInjection(InjectionType.Transient)]
|
|
||||||
public class RoleMenuServie : BaseService<RoleMenu>
|
|
||||||
{
|
|
||||||
public RoleMenuServie(IConfiguration config) : base(config, nameof(RoleMenu))
|
|
||||||
{
|
|
||||||
}
|
|
||||||
/// <summary>
|
|
||||||
/// 根据角色ID获取角色菜单
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="roleId"></param>
|
|
||||||
/// <returns></returns>
|
|
||||||
public async Task<List<RoleMenu>> GetByRoleId(string roleId)
|
|
||||||
{
|
|
||||||
Expression<Func<RoleMenu, bool>> exp = filter => filter.IsDelete == false && filter.RoleId == roleId;
|
|
||||||
return (await base.GetListWithExp(exp)).ToList();
|
|
||||||
}
|
|
||||||
/// <summary>
|
|
||||||
/// 表中添加角色菜单
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="input"></param>
|
|
||||||
/// <returns></returns>
|
|
||||||
public async Task<ApiResult> AddRoleMenu(AddRoleMenuDTO input)
|
|
||||||
{
|
|
||||||
foreach (var item in input.MenuIds)
|
|
||||||
{
|
|
||||||
await base.CreateAsync(new RoleMenu()
|
|
||||||
{
|
|
||||||
RoleId = input.RoleId,
|
|
||||||
MenuId = item
|
|
||||||
});
|
|
||||||
}
|
|
||||||
return new ApiResult() { code = 0 };
|
|
||||||
}
|
|
||||||
public async Task<ApiResult> DeleteRoleMenu(string roleId)
|
|
||||||
{
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
/// <summary>
|
|
||||||
/// 更新角色菜单
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="input"></param>
|
|
||||||
/// <returns></returns>
|
|
||||||
public async Task<ApiResult> UpdateRoleMenu(UpdateRoleMenuDTO input)
|
|
||||||
{
|
|
||||||
await base.BatchRemoveAsync(filter => filter.RoleId == input.RoleId);
|
|
||||||
foreach (var item in input.MenuIds)
|
|
||||||
{
|
|
||||||
await base.CreateAsync(new RoleMenu()
|
|
||||||
{
|
|
||||||
RoleId = input.RoleId,
|
|
||||||
MenuId = item
|
|
||||||
});
|
|
||||||
}
|
|
||||||
return new ApiResult() { code = 0 };
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
@ -1,105 +1,20 @@
|
||||||
using langguanApi.Extensions;
|
using langguanApi.Extensions.AutoDI;
|
||||||
using langguanApi.Extensions.AutoDI;
|
|
||||||
using langguanApi.Model.Dto.SystemConfigurationDto;
|
using langguanApi.Model.Dto.SystemConfigurationDto;
|
||||||
using langguanApi.Model;
|
using langguanApi.Model;
|
||||||
using langguanApi.Model.Entity;
|
using langguanApi.Model.Entity;
|
||||||
using langguanApi.Model.SystemConfigurationEntity;
|
using langguanApi.Model.SystemConfigurationEntity;
|
||||||
|
using StackExchange.Redis;
|
||||||
using Mapster;
|
using Mapster;
|
||||||
using NPOI.SS.Formula.Functions;
|
|
||||||
using System.Linq.Expressions;
|
using System.Linq.Expressions;
|
||||||
using System.Threading.Tasks;
|
|
||||||
using System;
|
|
||||||
using System.Collections.Generic;
|
|
||||||
|
|
||||||
namespace langguanApi.Service
|
namespace langguanApi.Service
|
||||||
{
|
{
|
||||||
/// <summary>
|
|
||||||
/// 校色服务
|
|
||||||
/// </summary>
|
|
||||||
[ServiceInjection(InjectionType.Transient)]
|
[ServiceInjection(InjectionType.Transient)]
|
||||||
public class RoleService : BaseService<Role>
|
public class RoleService : BaseService<Model.SystemConfigurationEntity.UserRole>
|
||||||
{
|
{
|
||||||
private readonly RoleMenuServie _roleMenuServie;
|
public RoleService(IConfiguration config) : base(config, nameof(Role))
|
||||||
public RoleService(IConfiguration config, RoleMenuServie roleMenuServie) : base(config, nameof(Role))
|
|
||||||
{
|
{
|
||||||
_roleMenuServie = roleMenuServie;
|
|
||||||
}
|
}
|
||||||
/// <summary>
|
|
||||||
/// 新增角色
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="role"></param>
|
|
||||||
/// <returns></returns>
|
|
||||||
public async Task<ApiResult> Add(AddRoleDto role)
|
|
||||||
{
|
|
||||||
if (await base.Exist(filter => filter.RoleName == role.RoleName))
|
|
||||||
{
|
|
||||||
return new ApiResult() { code = 1, msg = "角色名称已存在" };
|
|
||||||
}
|
|
||||||
var entity = role.Adapt<Role>();
|
|
||||||
await base.CreateAsync(entity);
|
|
||||||
return new ApiResult() { code = 0 };
|
|
||||||
}
|
|
||||||
/// <summary>
|
|
||||||
/// 获取角色及菜单
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="roleId"></param>
|
|
||||||
/// <returns></returns>
|
|
||||||
public async Task<ApiResult> GetRoleAndMenu(string roleId)
|
|
||||||
{
|
|
||||||
var role = await base.GetAsync(roleId);
|
|
||||||
if (role != null)
|
|
||||||
{
|
|
||||||
var menus = await _roleMenuServie.GetByRoleId(roleId);
|
|
||||||
return new ApiResult() { code = 0, data = new { role, menus } };
|
|
||||||
}
|
|
||||||
return new ApiResult() { code = 0 };
|
|
||||||
}
|
|
||||||
/// <summary>
|
|
||||||
/// 删除角色
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="ids"></param>
|
|
||||||
/// <returns></returns>
|
|
||||||
public async Task<ApiResult> Remove(IEnumerable<string> ids)
|
|
||||||
{
|
|
||||||
if (ids.Any())
|
|
||||||
{
|
|
||||||
foreach (var item in ids)
|
|
||||||
{
|
|
||||||
await base.RemoveAsync(item);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return new ApiResult() { code = 0 };
|
|
||||||
}
|
|
||||||
/// <summary>
|
|
||||||
/// 更新角色
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="role"></param>
|
|
||||||
/// <returns></returns>
|
|
||||||
public async Task<ApiResult> update(UpdateRoleDto role)
|
|
||||||
{
|
|
||||||
var entity = role.Adapt<Role>();
|
|
||||||
await base.UpdateAsync(entity.Id, entity);
|
|
||||||
return new ApiResult() { code = 0 };
|
|
||||||
}
|
|
||||||
/// <summary>
|
|
||||||
/// 分页取数据
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="input"></param>
|
|
||||||
/// <returns></returns>
|
|
||||||
public async Task<object> GetPage(reqpage input)
|
|
||||||
{
|
|
||||||
Expression<Func<Role, bool>> exp = filter => filter.IsDelete == false;
|
|
||||||
if (!string.IsNullOrEmpty(input.key))
|
|
||||||
{
|
|
||||||
exp = exp.And(filter => filter.RoleName.Contains(input.key));
|
|
||||||
}
|
|
||||||
return await base.GetPager(new ReqPaing()
|
|
||||||
{
|
|
||||||
pageSize = input.pageSize,
|
|
||||||
current = input.current
|
|
||||||
}, exp);
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 用户是否存在
|
/// 用户是否存在
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
|
@ -107,10 +22,11 @@ namespace langguanApi.Service
|
||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
public async Task<bool> Exist(RoleDto input)
|
public async Task<bool> Exist(RoleDto input)
|
||||||
{
|
{
|
||||||
var entity = input.Adapt<Role>();
|
var entity = input.Adapt<UserRole>();
|
||||||
Expression<Func<Role, bool>> exp = filter => filter.RoleName == entity.RoleName;
|
Expression<Func<UserRole, bool>> exp = filter => filter.RoleName == entity.RoleName;
|
||||||
return await base.Exist(exp);
|
return await base.Exist(exp);
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 新加角色
|
/// 新加角色
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
|
@ -122,7 +38,7 @@ namespace langguanApi.Service
|
||||||
{
|
{
|
||||||
return new ApiResult { code = 1, msg = $"{input.RoleName}的角色已存在" };
|
return new ApiResult { code = 1, msg = $"{input.RoleName}的角色已存在" };
|
||||||
}
|
}
|
||||||
var entity = input.Adapt<Role>();
|
var entity = input.Adapt<UserRole>();
|
||||||
if (entity != null)
|
if (entity != null)
|
||||||
{
|
{
|
||||||
await base.CreateAsync(entity);
|
await base.CreateAsync(entity);
|
||||||
|
|
@ -135,11 +51,13 @@ namespace langguanApi.Service
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="ids"></param>
|
/// <param name="ids"></param>
|
||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
public async Task<List<Role>> GetRoleListByIds(IEnumerable<string> ids)
|
public async Task<List<UserRole>> GetRoleListByIds(IEnumerable<string> ids)
|
||||||
{
|
{
|
||||||
Expression<Func<Role, bool>> exp = filter => ids.Contains(filter.Id) && filter.IsDelete == false;
|
Expression<Func<UserRole, bool>> exp = filter => ids.Contains(filter.Id) && filter.IsDelete == false;
|
||||||
var list = (await base.GetListWithExp(exp)).ToList();
|
var list = (await base.GetListWithExp(exp)).ToList();
|
||||||
return list;
|
return list;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -186,6 +186,18 @@ namespace langguanApi.Service
|
||||||
{
|
{
|
||||||
exp = filter => filter.Username.Contains(input.Username);
|
exp = filter => filter.Username.Contains(input.Username);
|
||||||
}
|
}
|
||||||
|
if (!string.IsNullOrEmpty(input.Tel))
|
||||||
|
{
|
||||||
|
exp = filter => filter.Tel.Contains(input.Tel);
|
||||||
|
}
|
||||||
|
if (!string.IsNullOrEmpty(input.HiredateStart))
|
||||||
|
{
|
||||||
|
exp = filter => filter.Hiredate.Value >= DateTime.Parse(input.HiredateStart);
|
||||||
|
}
|
||||||
|
if (!string.IsNullOrEmpty(input.HiredateEnd))
|
||||||
|
{
|
||||||
|
exp = filter => filter.Hiredate.Value <= DateTime.Parse(input.HiredateEnd);
|
||||||
|
}
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
#region 获取数据
|
#region 获取数据
|
||||||
|
|
@ -199,8 +211,17 @@ namespace langguanApi.Service
|
||||||
list.Add(new UserListDto
|
list.Add(new UserListDto
|
||||||
{
|
{
|
||||||
Username = item.Username,
|
Username = item.Username,
|
||||||
|
Education = item.Education,
|
||||||
|
Tel = item.Tel,
|
||||||
Email = item.Email,
|
Email = item.Email,
|
||||||
roleName = roleList.FirstOrDefault(s => s.Id == item.roleId)?.RoleName,
|
roleName = roleList.FirstOrDefault(s => s.Id == item.roleId)?.RoleName,
|
||||||
|
Sex = item.Sex == 0 ? "男" : "女",
|
||||||
|
Address = item.Address,
|
||||||
|
IsAdmin = item.IsAdmin == 0 ? "否" : "是",
|
||||||
|
Native = item.Native,
|
||||||
|
University = item.University,
|
||||||
|
Hiredate = item.Hiredate.HasValue == true ? item.Hiredate.Value.ToString("yyyy-MM-dd") : "",
|
||||||
|
Brithday = item.Brithday.HasValue == true ? item.Brithday.Value.ToString("yyyy-MM-dd") : "",
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
#endregion
|
#endregion
|
||||||
|
|
|
||||||
|
|
@ -2,7 +2,7 @@
|
||||||
|
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<TargetFramework>net6.0</TargetFramework>
|
<TargetFramework>net6.0</TargetFramework>
|
||||||
<Nullable>disable</Nullable>
|
<Nullable>enable</Nullable>
|
||||||
<ImplicitUsings>enable</ImplicitUsings>
|
<ImplicitUsings>enable</ImplicitUsings>
|
||||||
<DockerDefaultTargetOS>Linux</DockerDefaultTargetOS>
|
<DockerDefaultTargetOS>Linux</DockerDefaultTargetOS>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue