using Microsoft.AspNetCore.Mvc;
using IStation.Model.Api;
using System.Net;
using System.Net.Http.Headers;
using Microsoft.Extensions.Hosting.Internal;
using Microsoft.AspNetCore.Http.Extensions;
using IStation.Untity;
namespace IStation.WebApi.Controllers.V1
{
///
/// User标准Api
///
[ApiController]
[Route("v1/Standard/User")]
[ApiExplorerSettings(GroupName = "v1")]
public class User_StandardController : ControllerBase
{
private readonly Service.User _service = new Service.User();
#region Query
///
/// 获取所有
///
[Route("GetAll")]
[HttpGet]
public Result GetAll()
{
var list = _service.GetAll();
var vm_list = list?.Select(x => new Model.UserSecret(x)).ToList();
return new Result>(vm_list);
}
///
/// 通过 CorpID 获取
///
[Route("GetByCorpID")]
[HttpGet]
public Result GetByCorpID(long CorpID)
{
if (CorpID < 1)
{
return new Result(Code.Error, "CorpID 参数错误");
}
var list = _service.GetByCorpID(CorpID);
var vm_list = list?.Select(x => new Model.UserSecret(x)).ToList();
return new Result>(vm_list);
}
///
/// 通过 ID 获取
///
[Route("GetByID")]
[HttpGet]
public Result GetByID(long ID)
{
if (ID < 1)
{
return new Result(Code.Error, "ID 参数错误");
}
var model = _service.GetByID(ID);
var vm = model == null ? null : new Model.UserSecret(model);
return new Result(vm);
}
///
/// 通过 Ids 获取
///
[Route("GetByIds")]
[HttpGet]
public Result GetByIds(string Ids)
{
var ids = LongListHelper.ToList(Ids);
if (ids == null || ids.Count() < 1)
{
return new Result(Code.Error, "Ids 参数错误");
}
var list = _service.GetByIds(ids);
var vm_list = list?.Select(x => new Model.UserSecret(x)).ToList();
return new Result>(vm_list);
}
///
/// 通过 CreateUserID 获取
///
[Route("GetByCreateUserID")]
[HttpGet]
public Result GetByCreateUserID(long CreateUserID)
{
if (CreateUserID < 1)
{
return new Result(Code.Error, "CreateUserID 参数错误");
}
var list = _service.GetByCreateUserID(CreateUserID);
var vm_list = list?.Select(x => new Model.UserSecret(x)).ToList();
return new Result>(vm_list);
}
///
/// 是否存在登录名称
///
[Route("IsExistLoginName")]
[HttpGet]
public Result IsExistLoginName(string LoginName)
{
if (string.IsNullOrEmpty(LoginName))
{
return new Result("LoginName 参数错误");
}
var bol = _service.IsExistLoginName(LoginName);
return new Result(bol);
}
///
/// 是否存在登录名称
///
[Route("IsExistLoginNameExceptID")]
[HttpGet]
public Result IsExistLoginNameExceptID(string LoginName, long ExceptID)
{
if (string.IsNullOrEmpty(LoginName))
{
return new Result("LoginName 参数错误");
}
if (ExceptID < 1)
{
return new Result("ExceptID 参数错误");
}
var bol = _service.IsExistLoginNameExceptID(LoginName, ExceptID);
return new Result(bol);
}
///
/// 通过 LoginName 获取
///
[Route("GetByLoginName")]
[HttpGet]
public Result GetByLoginName(string LoginName)
{
if (string.IsNullOrEmpty(LoginName))
{
return new Result(Code.Error, "LoginName 参数错误");
}
var model = _service.GetByLoginName(LoginName);
var vm = model == null ? null : new Model.UserSecret(model);
return new Result(vm);
}
///
/// 获取子项
///
[Route("GetChildrenByCreateUserID")]
[HttpGet]
public Result GetChildrenByCreateUserID(long CreateUserID)
{
if (CreateUserID < 1)
{
return new Result(Code.Error, "CreateUserID 参数错误");
}
var list = _service.GetChildrenByCreateUserID(CreateUserID);
var vm_list = list?.Select(x => new Model.UserSecret(x)).ToList();
return new Result>(vm_list);
}
///
/// 获取子项及自身
///
[Route("GetChildAndSelfByCreateUserID")]
[HttpGet]
public Result GetChildAndSelfByCreateUserID(long CreateUserID)
{
if (CreateUserID < 1)
{
return new Result(Code.Error, "CreateUserID 参数错误");
}
var list = _service.GetChildAndSelfByCreateUserID(CreateUserID);
var vm_list = list?.Select(x => new Model.UserSecret(x)).ToList();
return new Result>(vm_list);
}
///
/// 根据 Relation 判断是否存在用户
///
[Route("IsExistByRelation")]
[HttpGet]
public Result IsExistByRelation(long CorpID, string RelatedType, long RelatedID)
{
if (CorpID < 1)
{
return new Result(Code.Error, "CorpID 参数错误");
}
if (RelatedID < 1)
{
return new Result(Code.Error, "RelatedID 参数错误");
}
var bol = _service.IsExistByRelation(CorpID, RelatedType, RelatedID);
return new Result(bol);
}
#endregion
#region Insert
///
/// 插入一条
///
[Route("Insert")]
[HttpPost]
public Result Insert(Model.UserInsertInput model)
{
if (model == null)
{
return new Result(Code.Error, "参数错误");
}
if (model.CorpID < 1)
{
return new Result(Code.Error, "CorpID 参数错误");
}
var id = _service.Insert(model);
return new Result(id);
}
///
/// 批量插入
///
[Route("Inserts")]
[HttpPost]
public Result Inserts(List list)
{
if (list == null || list.Count() <= 0)
{
return new Result(Code.Error, "参数错误");
}
var bol = _service.Inserts(list);
return new Result(bol);
}
#endregion
#region Update
///
/// 更新一条
///
[Route("Update")]
[HttpPut]
public Result Update(Model.UserUpdateInput model)
{
if (model == null)
{
return new Result(Code.Error, "参数错误");
}
if (model.CorpID < 1)
{
return new Result(Code.Error, "CorpID 参数错误");
}
if (model.ID < 1)
{
return new Result(Code.Error, "ID 参数错误");
}
var bol = _service.Update(model);
return new Result(bol);
}
///
/// 批量更新
///
[Route("Updates")]
[HttpPut]
public Result Updates(List list)
{
if (list == null || list.Count() <= 0)
{
return new Result(Code.Error, "参数错误");
}
return new Result(_service.Updates(list));
}
///
/// 更新使用状态
///
[Route("UpdateUseStatus")]
[HttpPut]
public Result UpdateUseStatus(Model.UseStatusUpdateInput model)
{
if (model == null)
{
return new Result(Code.Error, "参数错误");
}
if (model.ID < 1)
{
return new Result(Code.Error, "ID 参数错误");
}
var bol = _service.UpdateUseStatus(model.ID, (Model.User.eUseStatus)model.UseStatus);
return new Result(bol);
}
///
/// 更新排序码
///
[Route("UpdateSortCode")]
[HttpPut]
public Result UpdateSortCode(Model.SortCodeUpdateInput model)
{
if (model == null)
{
return new Result(Code.Error, "参数错误");
}
if (model.ID < 1)
{
return new Result(Code.Error, "ID 参数错误");
}
var bol = _service.UpdateSortCode(model.ID, model.SortCode);
return new Result(bol);
}
///
/// 更新排序
///
[Route("UpdateSorter")]
[HttpPut]
public Result UpdateSorter(List Sorters)
{
if (Sorters == null || Sorters.Count() < 1)
{
return new Result(Code.Error, "参数错误");
}
var bol = _service.UpdateSorter(Sorters);
return new Result(bol);
}
///
/// 更新登录密码
///
[Route("UpdateLoginPwd")]
[HttpPut]
public Result UpdateLoginPwd(Model.UserUpdateLogingPwdInput model)
{
if (model == null)
{
return new Result(Code.Error, "参数错误");
}
if (model.UserID < 1)
{
return new Result(Code.Error, "UserID 参数错误");
}
var bol = _service.UpdateLoginPwd(model.UserID, model.LoginPwd);
return new Result(bol);
}
///
/// 重置登录密码
///
[Route("ResetLoginPwd")]
[HttpPut]
public Result ResetLoginPwd(Model.UserResetLoginPwdInput model)
{
if (model == null)
{
return new Result(Code.Error, "参数错误");
}
if (model.UserID < 1)
{
return new Result(Code.Error, "UserID 参数错误");
}
var bol = _service.ResetLoginPwd(model.UserID);
return new Result(bol);
}
///
/// 更新TagName
///
[Route("UpdateTagName")]
[HttpPut]
public Result UpdateTagName(Model.TagNameUpdateInput model)
{
if (model == null)
{
return new Result(Code.Error, "参数错误");
}
if (model.ID < 1)
{
return new Result(Code.Error, "ID 参数错误");
}
var bol = _service.UpdateTagName(model.ID, model.TagName);
return new Result(bol);
}
#endregion
#region Delete
///
/// 通过 ID 删除
///
[Route("DeleteByID")]
[HttpDelete]
public Result DeleteByID(long ID)
{
if (ID < 1)
{
return new Result(Code.Error, "ID 参数错误");
}
var bol = _service.DeleteByID(ID, out string msg);
return new ResultReason(bol, msg);
}
#endregion
}
}