菜单栏
This commit is contained in:
Binary file not shown.
@@ -1,5 +1,6 @@
|
|||||||
using Microsoft.AspNetCore.Http;
|
using Microsoft.AspNetCore.Http;
|
||||||
using Microsoft.AspNetCore.Mvc;
|
using Microsoft.AspNetCore.Mvc;
|
||||||
|
using Microsoft.Extensions.Logging;
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Linq;
|
using System.Linq;
|
||||||
@@ -7,6 +8,7 @@ using System.Threading.Tasks;
|
|||||||
using WMS.Web.Core.Dto.Login;
|
using WMS.Web.Core.Dto.Login;
|
||||||
using WMS.Web.Core.Internal.Results;
|
using WMS.Web.Core.Internal.Results;
|
||||||
using WMS.Web.Domain.IService.Public;
|
using WMS.Web.Domain.IService.Public;
|
||||||
|
using WMS.Web.Domain.Values;
|
||||||
|
|
||||||
namespace WMS.Web.Api.Controllers
|
namespace WMS.Web.Api.Controllers
|
||||||
{
|
{
|
||||||
@@ -18,8 +20,10 @@ namespace WMS.Web.Api.Controllers
|
|||||||
public class LoginController : ControllerBase
|
public class LoginController : ControllerBase
|
||||||
{
|
{
|
||||||
private readonly ILoginService _loginService;
|
private readonly ILoginService _loginService;
|
||||||
public LoginController(ILoginService loginService)
|
private readonly ILogger<LoginController> _logger;
|
||||||
|
public LoginController(ILoginService loginService,ILogger<LoginController> logger)
|
||||||
{
|
{
|
||||||
|
this._logger = logger;
|
||||||
this._loginService = loginService;
|
this._loginService = loginService;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -100,5 +104,39 @@ namespace WMS.Web.Api.Controllers
|
|||||||
await _loginService.LoginOutSingleAsync(value);
|
await _loginService.LoginOutSingleAsync(value);
|
||||||
return Result.ReSuccess();
|
return Result.ReSuccess();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 菜单列表
|
||||||
|
/// </summary>
|
||||||
|
/// <returns></returns>
|
||||||
|
[HttpPost]
|
||||||
|
[Route("Menus")]
|
||||||
|
public async Task<Result<List<MenuResponse>>> GetMenuList()
|
||||||
|
{
|
||||||
|
var loginInfo = _loginService.GetLoginInfo(this.HttpContext.Request.Headers["Authorization"]);
|
||||||
|
if (loginInfo == null || loginInfo.UserInfo == null)
|
||||||
|
return Result<List<MenuResponse>>.ReFailure(ResultCodes.Token_Invalid_Error);
|
||||||
|
|
||||||
|
_logger.LogInformation($"用户ID:{loginInfo.UserInfo.UcId}");
|
||||||
|
var list = await _loginService.GetMenuList(loginInfo.UserInfo.UcId);
|
||||||
|
_logger.LogInformation($"菜单数量:{list.Count}");
|
||||||
|
if (list.Count == 0)
|
||||||
|
{
|
||||||
|
//调用单点的退出接口
|
||||||
|
var dto = new LoginOutDto()
|
||||||
|
{
|
||||||
|
UcId = loginInfo.UserInfo.UcId.ToString(),
|
||||||
|
SessionId = loginInfo.UserInfo.SeesionId,
|
||||||
|
Token = loginInfo.TokenInfo.Token,
|
||||||
|
AccessToken = loginInfo.TokenInfo.PhpToken,
|
||||||
|
ExpiresIn = loginInfo.TokenInfo.Expired
|
||||||
|
|
||||||
|
};
|
||||||
|
await _loginService.LoginOut(dto);
|
||||||
|
return Result<List<MenuResponse>>.ReFailure(ResultCodes.NoRoot);
|
||||||
|
}
|
||||||
|
var res = Result<List<MenuResponse>>.ReSuccess(list);
|
||||||
|
return res;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -328,6 +328,12 @@
|
|||||||
</summary>
|
</summary>
|
||||||
<returns></returns>
|
<returns></returns>
|
||||||
</member>
|
</member>
|
||||||
|
<member name="M:WMS.Web.Api.Controllers.LoginController.GetMenuList">
|
||||||
|
<summary>
|
||||||
|
菜单列表
|
||||||
|
</summary>
|
||||||
|
<returns></returns>
|
||||||
|
</member>
|
||||||
<member name="M:WMS.Web.Api.Controllers.MoveBoxRecordController.GetPagedList(WMS.Web.Core.Dto.MoveBoxRecord.MoveBoxRecordQueryRequest)">
|
<member name="M:WMS.Web.Api.Controllers.MoveBoxRecordController.GetPagedList(WMS.Web.Core.Dto.MoveBoxRecord.MoveBoxRecordQueryRequest)">
|
||||||
<summary>
|
<summary>
|
||||||
列表
|
列表
|
||||||
|
|||||||
@@ -3773,6 +3773,116 @@
|
|||||||
|
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
|
<member name="T:WMS.Web.Core.Dto.Login.MenuRequest">
|
||||||
|
<summary>
|
||||||
|
菜单的请求对象
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="P:WMS.Web.Core.Dto.Login.MenuRequest.UserId">
|
||||||
|
<summary>
|
||||||
|
用户ID(不是人员ID)
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="P:WMS.Web.Core.Dto.Login.MenuRequest.ModuleID">
|
||||||
|
<summary>
|
||||||
|
应用ID
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="T:WMS.Web.Core.Dto.Login.MenuResponse">
|
||||||
|
<summary>
|
||||||
|
菜单响应对象
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="P:WMS.Web.Core.Dto.Login.MenuResponse.ID">
|
||||||
|
<summary>
|
||||||
|
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="P:WMS.Web.Core.Dto.Login.MenuResponse.Pid">
|
||||||
|
<summary>
|
||||||
|
上级菜单
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="P:WMS.Web.Core.Dto.Login.MenuResponse.Module">
|
||||||
|
<summary>
|
||||||
|
模块ID,对应apps表ID
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="P:WMS.Web.Core.Dto.Login.MenuResponse.Title">
|
||||||
|
<summary>
|
||||||
|
菜单标题
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="P:WMS.Web.Core.Dto.Login.MenuResponse.Name">
|
||||||
|
<summary>
|
||||||
|
菜单标签
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="P:WMS.Web.Core.Dto.Login.MenuResponse.Path">
|
||||||
|
<summary>
|
||||||
|
菜单路径
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="P:WMS.Web.Core.Dto.Login.MenuResponse.Component">
|
||||||
|
<summary>
|
||||||
|
操作,比如 /admin/info
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="P:WMS.Web.Core.Dto.Login.MenuResponse.Icon">
|
||||||
|
<summary>
|
||||||
|
图标
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="P:WMS.Web.Core.Dto.Login.MenuResponse.Redirect">
|
||||||
|
<summary>
|
||||||
|
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="P:WMS.Web.Core.Dto.Login.MenuResponse.Sort">
|
||||||
|
<summary>
|
||||||
|
排序
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="P:WMS.Web.Core.Dto.Login.MenuResponse.Type">
|
||||||
|
<summary>
|
||||||
|
0为普通按钮/连接,1为左侧菜单
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="P:WMS.Web.Core.Dto.Login.MenuResponse.Hidden">
|
||||||
|
<summary>
|
||||||
|
是否显示:0为否,1为是
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="P:WMS.Web.Core.Dto.Login.MenuResponse.Closed">
|
||||||
|
<summary>
|
||||||
|
是否禁用:0为否,1为是
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="P:WMS.Web.Core.Dto.Login.MenuResponse.Disable">
|
||||||
|
<summary>
|
||||||
|
是否禁用:true为禁用,false为启用
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="P:WMS.Web.Core.Dto.Login.MenuResponse.Children">
|
||||||
|
<summary>
|
||||||
|
子集
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="P:WMS.Web.Core.Dto.Login.MenuResponse.meta">
|
||||||
|
<summary>
|
||||||
|
meta
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="P:WMS.Web.Core.Dto.Login.Meta.title">
|
||||||
|
<summary>
|
||||||
|
菜单名字
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
|
<member name="P:WMS.Web.Core.Dto.Login.Meta.icon">
|
||||||
|
<summary>
|
||||||
|
菜单图标
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
<member name="T:WMS.Web.Core.Dto.Login.LoginSingleRequest">
|
<member name="T:WMS.Web.Core.Dto.Login.LoginSingleRequest">
|
||||||
<summary>
|
<summary>
|
||||||
登录后:请求相关全部信息对象
|
登录后:请求相关全部信息对象
|
||||||
|
|||||||
@@ -3441,6 +3441,13 @@
|
|||||||
<param name="authorization"></param>
|
<param name="authorization"></param>
|
||||||
<returns></returns>
|
<returns></returns>
|
||||||
</member>
|
</member>
|
||||||
|
<member name="M:WMS.Web.Domain.IService.Public.ILoginService.GetMenuList(System.Int32)">
|
||||||
|
<summary>
|
||||||
|
获取菜单
|
||||||
|
</summary>
|
||||||
|
<param name="userId"></param>
|
||||||
|
<returns></returns>
|
||||||
|
</member>
|
||||||
<member name="T:WMS.Web.Domain.IService.Public.IOutStockTaskService">
|
<member name="T:WMS.Web.Domain.IService.Public.IOutStockTaskService">
|
||||||
<summary>
|
<summary>
|
||||||
出库任务
|
出库任务
|
||||||
@@ -5066,6 +5073,12 @@
|
|||||||
</summary>
|
</summary>
|
||||||
<param name="token"></param>
|
<param name="token"></param>
|
||||||
</member>
|
</member>
|
||||||
|
<member name="M:WMS.Web.Domain.Services.Public.LoginService.GetMenuList(System.Int32)">
|
||||||
|
<summary>
|
||||||
|
获取菜单数据
|
||||||
|
</summary>
|
||||||
|
<returns></returns>
|
||||||
|
</member>
|
||||||
<member name="T:WMS.Web.Domain.Services.Public.OpsService">
|
<member name="T:WMS.Web.Domain.Services.Public.OpsService">
|
||||||
<summary>
|
<summary>
|
||||||
ops服务
|
ops服务
|
||||||
@@ -5841,6 +5854,11 @@
|
|||||||
数据操作失败
|
数据操作失败
|
||||||
</summary>
|
</summary>
|
||||||
</member>
|
</member>
|
||||||
|
<member name="F:WMS.Web.Domain.Values.ResultCodes.NoRoot">
|
||||||
|
<summary>
|
||||||
|
没有菜单权限,无法登录
|
||||||
|
</summary>
|
||||||
|
</member>
|
||||||
<member name="T:WMS.Web.Domain.Values.SerialNumberOperateType">
|
<member name="T:WMS.Web.Domain.Values.SerialNumberOperateType">
|
||||||
<summary>
|
<summary>
|
||||||
序列号操作类型
|
序列号操作类型
|
||||||
|
|||||||
29
src/WMS.Web.Core/Dto/Login/Menu/MenuRequest.cs
Normal file
29
src/WMS.Web.Core/Dto/Login/Menu/MenuRequest.cs
Normal file
@@ -0,0 +1,29 @@
|
|||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Text;
|
||||||
|
|
||||||
|
namespace WMS.Web.Core.Dto.Login
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// 菜单的请求对象
|
||||||
|
/// </summary>
|
||||||
|
public class MenuRequest
|
||||||
|
{
|
||||||
|
public MenuRequest() { }
|
||||||
|
public MenuRequest(int userId, int moduleId)
|
||||||
|
{
|
||||||
|
this.UserId = userId;
|
||||||
|
this.ModuleID = moduleId;
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 用户ID(不是人员ID)
|
||||||
|
/// </summary>
|
||||||
|
public int UserId { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 应用ID
|
||||||
|
/// </summary>
|
||||||
|
public int ModuleID { get; set; }
|
||||||
|
}
|
||||||
|
}
|
||||||
105
src/WMS.Web.Core/Dto/Login/Menu/MenuResponse.cs
Normal file
105
src/WMS.Web.Core/Dto/Login/Menu/MenuResponse.cs
Normal file
@@ -0,0 +1,105 @@
|
|||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Text;
|
||||||
|
|
||||||
|
namespace WMS.Web.Core.Dto.Login
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// 菜单响应对象
|
||||||
|
/// </summary>
|
||||||
|
public class MenuResponse
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
///
|
||||||
|
///</summary>
|
||||||
|
|
||||||
|
public int ID { get; set; }
|
||||||
|
/// <summary>
|
||||||
|
/// 上级菜单
|
||||||
|
///</summary>
|
||||||
|
|
||||||
|
public int? Pid { get; set; }
|
||||||
|
/// <summary>
|
||||||
|
/// 模块ID,对应apps表ID
|
||||||
|
///</summary>
|
||||||
|
|
||||||
|
public int? Module { get; set; }
|
||||||
|
/// <summary>
|
||||||
|
/// 菜单标题
|
||||||
|
///</summary>
|
||||||
|
|
||||||
|
public string Title { get; set; }
|
||||||
|
/// <summary>
|
||||||
|
/// 菜单标签
|
||||||
|
///</summary>
|
||||||
|
|
||||||
|
public string Name { get; set; }
|
||||||
|
/// <summary>
|
||||||
|
/// 菜单路径
|
||||||
|
///</summary>
|
||||||
|
|
||||||
|
public string Path { get; set; }
|
||||||
|
/// <summary>
|
||||||
|
/// 操作,比如 /admin/info
|
||||||
|
///</summary>
|
||||||
|
|
||||||
|
public string Component { get; set; }
|
||||||
|
/// <summary>
|
||||||
|
/// 图标
|
||||||
|
///</summary>
|
||||||
|
|
||||||
|
public string Icon { get; set; }
|
||||||
|
/// <summary>
|
||||||
|
///
|
||||||
|
///</summary>
|
||||||
|
|
||||||
|
public string Redirect { get; set; }
|
||||||
|
/// <summary>
|
||||||
|
/// 排序
|
||||||
|
///</summary>
|
||||||
|
|
||||||
|
public int? Sort { get; set; }
|
||||||
|
/// <summary>
|
||||||
|
/// 0为普通按钮/连接,1为左侧菜单
|
||||||
|
///</summary>
|
||||||
|
|
||||||
|
public int? Type { get; set; }
|
||||||
|
/// <summary>
|
||||||
|
/// 是否显示:0为否,1为是
|
||||||
|
///</summary>
|
||||||
|
|
||||||
|
public bool Hidden { get; set; }
|
||||||
|
/// <summary>
|
||||||
|
/// 是否禁用:0为否,1为是
|
||||||
|
///</summary>
|
||||||
|
|
||||||
|
public bool Closed { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 是否禁用:true为禁用,false为启用
|
||||||
|
/// </summary>
|
||||||
|
public bool Disable { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 子集
|
||||||
|
/// </summary>
|
||||||
|
public List<MenuResponse> Children { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// meta
|
||||||
|
/// </summary>
|
||||||
|
public Meta meta { get; set; }
|
||||||
|
}
|
||||||
|
|
||||||
|
public class Meta
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// 菜单名字
|
||||||
|
/// </summary>
|
||||||
|
public string title { get; set; }
|
||||||
|
/// <summary>
|
||||||
|
/// 菜单图标
|
||||||
|
/// </summary>
|
||||||
|
public string icon { get; set; }
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -66,5 +66,12 @@ namespace WMS.Web.Domain.IService.Public
|
|||||||
/// <param name="authorization"></param>
|
/// <param name="authorization"></param>
|
||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
LoginInDto GetLoginInfo(string authorization);
|
LoginInDto GetLoginInfo(string authorization);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 获取菜单
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="userId"></param>
|
||||||
|
/// <returns></returns>
|
||||||
|
Task<List<MenuResponse>> GetMenuList(int userId);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -478,5 +478,19 @@ namespace WMS.Web.Domain.Services.Public
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 获取菜单数据
|
||||||
|
/// </summary>
|
||||||
|
/// <returns></returns>
|
||||||
|
public async Task<List<MenuResponse>> GetMenuList(int userId)
|
||||||
|
{
|
||||||
|
int module = _soaOptions.ModuleID;
|
||||||
|
var result = await _singleDataService.GetSingleDataNoCache<ResultList<MenuResponse>, MenuRequest, SingleLoginAction>
|
||||||
|
(new MenuRequest(userId, module), SingleLoginAction.Menus, type: SingleControllerType.Login);
|
||||||
|
if (result.Success)
|
||||||
|
return result.Data.ToList();
|
||||||
|
return null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -24,6 +24,11 @@ namespace WMS.Web.Domain.Values
|
|||||||
public static ValueTuple<int, string> NoDateError = (40005, "数据不存在");
|
public static ValueTuple<int, string> NoDateError = (40005, "数据不存在");
|
||||||
public static ValueTuple<int, string> SourceBillNoDateError = (40005, "来源单不存在,请核对后再试");
|
public static ValueTuple<int, string> SourceBillNoDateError = (40005, "来源单不存在,请核对后再试");
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 没有菜单权限,无法登录
|
||||||
|
/// </summary>
|
||||||
|
public static ValueTuple<int, string> NoRoot = (40005, "没有菜单权限,无法登录");
|
||||||
|
|
||||||
//出库任务单
|
//出库任务单
|
||||||
public static ValueTuple<int, string> MergeStatusError = (70000, "请选择出库状态为”待出库”且出库类型为”销售出库”发货组织和收货客户以及发货仓库一致的数据");
|
public static ValueTuple<int, string> MergeStatusError = (70000, "请选择出库状态为”待出库”且出库类型为”销售出库”发货组织和收货客户以及发货仓库一致的数据");
|
||||||
public static ValueTuple<int, string> OutStockQtyError = (70001, "可出库数量不足");
|
public static ValueTuple<int, string> OutStockQtyError = (70001, "可出库数量不足");
|
||||||
|
|||||||
Reference in New Issue
Block a user