using Infrastructure;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc;
using OpenAuth.App.BaseApp.SysGroupManager;
using OpenAuth.App.BaseApp.SysGroupManager.Request;
using OpenAuth.App.ServiceApp.InsTaskHallManager;
using OpenAuth.Repository.Domain;
namespace OpenAuth.WebApi.Controllers.BaseControllers
{
///
/// 分组
///
[Route("api/[controller]/[action]")]
[ApiController]
public class SysGroupController : ControllerBase
{
private readonly SysGroupApp _app;
public SysGroupController(SysGroupApp app)
{
_app = app;
}
///
/// 分页获取列表数据
///
/// 筛选条件
/// 当前页
/// 每页条数
///
[HttpGet]
public async Task>>> LoadGroupList(string keyword, int page = 1, int limit = 15)
{
return await _app.LoadGroupList(keyword, page, limit);
}
///
/// 获取单个分组信息
///
/// 主键
///
[HttpGet]
public async Task GetEntityById(string id)
{
return await _app.GetEntityById(id);
}
///
/// 新增分组
///
/// 主键值
/// 数据源实体
///
[HttpPost]
public async Task> SaveEntity(string id, SysGroup group)
{
var result = new Response();
try
{
result = await _app.SaveEntity(id, group);
}
catch (Exception ex)
{
result.Code = 500;
result.Message = ex.InnerException?.Message ?? ex.Message;
}
return result;
}
///
/// 删除分组
///
/// 主键
[HttpPost]
public async Task> DeleteEntity(string id)
{
var result = new Response();
try
{
result = await _app.DeleteEntity(id);
}
catch (Exception ex)
{
result.Code = 500;
result.Message = ex.InnerException?.Message ?? ex.Message;
}
return result;
}
///
/// 给分组分配用户
///
/// 数据
[HttpPost]
public async Task> AssignGroupUser(GroupUserReq model)
{
var result = new Response();
try
{
result = await _app.AssignGroupUser(model);
}
catch (Exception ex)
{
result.Code = 500;
result.Message = ex.InnerException?.Message ?? ex.Message;
}
return result;
}
///
/// 根据小组id,获取成员信息
///
/// 小组id
/// 用户名筛选
/// 当前页
/// 每页条数
///
[HttpGet]
public async Task>>> LoadUserListByGroupid(string groupid, string keyword, int page, int limit)
{
return await _app.LoadUserListByGroupid(groupid,keyword, page, limit);
}
}
}