using JiepeiWMS.Common.Enums;
|
using JiepeiWMS.Common.Helper;
|
using JiepeiWMS.Common.HttpContextUser;
|
using JiepeiWMS.Extends;
|
using JiepeiWMS.IServices;
|
using JiepeiWMS.Model;
|
using JiepeiWMS.Model.Models;
|
using Microsoft.AspNetCore.Authorization;
|
using Microsoft.AspNetCore.Mvc;
|
using System;
|
using System.Linq;
|
using System.Linq.Expressions;
|
using System.Threading.Tasks;
|
|
namespace JiepeiWMS.Api.Controllers
|
{
|
[Route("api/[controller]/[action]")]
|
[ApiController]
|
[Authorize(Permissions.Name)]
|
public class SysOrgController : ControllerBase
|
{
|
/// <summary>
|
/// 服务器接口,因为是模板生成,所以首字母是大写的,自己可以重构下
|
/// </summary>
|
private readonly ISysOrgServices _BllSysOrg;
|
private readonly IUser _User;
|
|
public SysOrgController(ISysOrgServices BllSysOrg, IUser User)
|
{
|
_BllSysOrg = BllSysOrg;
|
_User = User;
|
}
|
|
[HttpGet]
|
public async Task<MessageModel<PageModel<SysOrg>>> GetList(int PageIndex = 1, string Key = "", int PageSize = 20)
|
{
|
if (string.IsNullOrEmpty(Key) || string.IsNullOrWhiteSpace(Key))
|
{
|
Key = "";
|
}
|
|
Expression<Func<SysOrg, sysUserInfo, bool>> whereExpression = (pg, u) => pg.ShortName.Contains(Key);
|
|
return new MessageModel<PageModel<SysOrg>>()
|
{
|
msg = "获取成功",
|
success = true,
|
response = await _BllSysOrg.QueryPage(whereExpression, PageIndex, PageSize)
|
};
|
}
|
|
[HttpGet]
|
public async Task<MessageModel<object>> Get(int id = 0)
|
{
|
var dictype = typeof(EnumSysOrgType)._GetValueDescriptionDicFromEnumType<EnumSysOrgType>().Select(t => new { Key = t.Key.GetHashCode(), t.Value });
|
|
return new MessageModel<object>()
|
{
|
msg = "获取成功",
|
success = true,
|
response = new
|
{
|
dictype
|
}
|
};
|
}
|
|
[HttpPost]
|
public async Task<MessageModel<string>> Post([FromBody] SysOrg request)
|
{
|
var data = new MessageModel<string>();
|
|
request.UserId = _User.ID;
|
request.CreateTime = DateTime.Now;
|
var id = await _BllSysOrg.Add(request);
|
data.success = id > 0;
|
|
if (data.success)
|
{
|
data.response = id.ObjToString();
|
data.msg = "添加成功";
|
}
|
|
return data;
|
}
|
|
[HttpPut]
|
public async Task<MessageModel<string>> Put([FromBody] SysOrg request)
|
{
|
var data = new MessageModel<string>();
|
if (request.Id > 0)
|
{
|
data.success = await _BllSysOrg.Update(request, lstIgnoreColumns: new System.Collections.Generic.List<string> { "UserId", "CreateTime" });
|
if (data.success)
|
{
|
data.msg = "更新成功";
|
data.response = request?.Id.ObjToString();
|
}
|
}
|
|
return data;
|
}
|
|
[HttpDelete]
|
public async Task<MessageModel<string>> Delete(int id = 0)
|
{
|
var data = new MessageModel<string>();
|
if (id > 0)
|
{
|
var detail = await _BllSysOrg.QueryById(id);
|
|
if (detail != null)
|
{
|
data.success = await _BllSysOrg.Delete(detail);
|
if (data.success)
|
{
|
data.msg = "删除成功";
|
data.response = detail?.Id.ObjToString();
|
}
|
}
|
}
|
|
return data;
|
}
|
|
[HttpDelete]
|
public async Task<MessageModel<string>> DeleteMore(string Ids = "")
|
{
|
var data = new MessageModel<string>();
|
var lstid = Ids._ToIntList();
|
if (lstid.Count > 0)
|
{
|
var ok = await _BllSysOrg.DeleteByIds(lstid.Select(t => (object)t).ToArray());
|
if (ok)
|
{
|
data.msg = "删除成功";
|
data.response = string.Empty;
|
}
|
}
|
return data;
|
}
|
|
}
|
}
|