You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
64 lines
1.8 KiB
C#
64 lines
1.8 KiB
C#
using Microsoft.AspNetCore.Http;
|
|
using Microsoft.AspNetCore.Mvc;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Text.Json;
|
|
using System.Threading.Tasks;
|
|
using Txgy.EWS.Server.IService;
|
|
using Txgy.EWS.Server.Models;
|
|
|
|
namespace Txgy.EWS.Server.Start.Controllers
|
|
{
|
|
//[Route("api/v1/[controller]")]
|
|
[ApiController]
|
|
public class UserController : Controller
|
|
{
|
|
IUserService _userService;
|
|
public UserController(IUserService userService)
|
|
{
|
|
_userService = userService;
|
|
}
|
|
|
|
[HttpGet]
|
|
[Route("all")]
|
|
public JsonResult GetUsers()
|
|
{
|
|
return Json(_userService.Query<SysUserInfo>(u => u.state == 1));
|
|
}
|
|
|
|
[HttpPost]
|
|
[Route("state")]
|
|
public IActionResult UpdateState([FromForm] IFormCollection form)
|
|
{
|
|
_userService.ChangeState(int.Parse(form["userId"]), int.Parse(form["state"]));
|
|
return Ok();
|
|
}
|
|
|
|
[HttpPost]
|
|
[Route("save")]
|
|
public IActionResult UpdateUserInfo([FromBody] JsonElement data)
|
|
{
|
|
_userService.SaveUser(data.ToString());
|
|
return Ok(data);
|
|
}
|
|
|
|
[HttpPost]
|
|
[Route("resetpwd")]
|
|
public IActionResult ResetPassword([FromForm] IFormCollection form)
|
|
{
|
|
_userService.ResetPassword(int.Parse(form["userId"]));
|
|
return Ok();
|
|
}
|
|
|
|
[HttpPost]
|
|
[Route("roles")]
|
|
public IActionResult UpdateRoles([FromForm] IFormCollection form)
|
|
{
|
|
List<int> roles = Newtonsoft.Json.JsonConvert.DeserializeObject<List<int>>(form["roles"].ToString());
|
|
_userService.UpdateRoles(int.Parse(form["userId"]), roles);
|
|
return Ok();
|
|
}
|
|
}
|
|
}
|