hwh
2024-06-28 08a515946d6763b26746d593af76a8af9b1b4076
Wms/Wms/Controllers/BasisController.cs
@@ -21,6 +21,7 @@
using System.Data;
using Model.ModelDto.LogDto;
using Utility;
using Model.ModelVm.LogVm;
namespace Wms.Controllers
{
@@ -119,12 +120,18 @@
        /// <exception cref="System.Exception">捕获异常</exception>
        [HttpPost]
        [ServiceFilter(typeof(ApiResponseActionFilter))]
        [UnitOfWork]
        public async Task InsertUserinfo(UserInfoDto UserInfoDto)
        {
            UserInfoDto.CreateUser = _userManager.UserId;
            await _userInforServer.InsertUserInfo(UserInfoDto);
            await _operation.InsertOperation("系统设置", "用户管理", UserInfoDto.UserNo, "添加", "添加用户信息 用户号:" + UserInfoDto.UserNo, _userManager.UserId);
            await _operation.InsertOperation(new OperationInputVm()
            {
                ParentName = "系统设置",
                MenuName = "用户管理",
                FkNo = UserInfoDto.UserNo,
                TypeName = "添加",
                Msg = "添加用户信息 用户号:" + UserInfoDto.UserNo
            });
        }
@@ -136,12 +143,20 @@
        /// <exception cref="System.Exception">异常</exception>
        [HttpGet]
        [ServiceFilter(typeof(ApiResponseActionFilter))]
        [UnitOfWork]
        public async Task DeleteUserInfo(int userids)
        {
            //获取用户信息
            SysUserInfor user = await _userInforServer.GetUserInfoById(userids);
            await _userInforServer.DeleteUserinfo(user);
            await _operation.InsertOperation("系统设置", "用户管理", user.UserNo, "删除", "删除用户信息 用户号:" + user.UserNo, _userManager.UserId);
            await _operation.InsertOperation(new OperationInputVm()
            {
                ParentName = "系统设置",
                MenuName = "用户管理",
                FkNo = user.UserNo,
                TypeName = "删除",
                Msg = "删除用户信息 用户号:" + user.UserNo
            });
        }
@@ -153,39 +168,24 @@
        /// <exception cref="System.Exception">捕获异常</exception>
        [HttpPost]
        [ServiceFilter(typeof(ApiResponseActionFilter))]
        [UnitOfWork]
        public async Task UpdateUserinfo(UserInfoDto userdto)
        {
            userdto.UpdateUser = _userManager.UserId;
            await _userInforServer.UpdateUserinfo(userdto);
            await _operation.InsertOperation("系统设置", "用户管理", userdto.UserNo, "修改", "修改用户信息 用户号:" + userdto.UserNo, _userManager.UserId);
            await _operation.InsertOperation(new OperationInputVm()
            {
                ParentName = "系统设置",
                MenuName = "用户管理",
                FkNo = userdto.UserNo,
                TypeName = "编辑",
                Msg = "修改用户信息 用户号:" + userdto.UserNo
            });
        }
        #endregion
        #region 修改密码
        /// <summary>
        /// 修改密码 根据id获取用户原密码
        /// </summary>
        /// <param name="PassWord">用户原密码</param>
        /// <returns></returns>
        //[HttpGet]
        //public async int GetUserUptPassById(string PassWord, int userId)
        //{
        //    //根据用户id获取用户密码
        //    SysUserInfor user = await _userInforServer.GetUserInfoById(userId);
        //    //判断原密码是否正确
        //    if (user.PassWord == PassWord)
        //    {
        //        return 1;
        //    }
        //    else
        //    {
        //        return 0;
        //    }
        //}
        ///// <param name="userId">用户id</param>
        /// <summary>
@@ -206,20 +206,13 @@
            //获取当前操作用户id
            SysUserInfor user = await _userInforServer.GetUserInfoById(_userManager.UserId);
            if (user == null)
            {
                throw Oops.Bah("找不到用户信息");
            }
            if (user.PassWord != pwdOld)
            {
                throw Oops.Bah("原密码不正确");
            }
            else
            {
                //修改密码
                int i = await _userInforServer.UptUserPassWord(pwdNew, _userManager.UserId);
                if (i <= 0)
                    throw Oops.Bah("修改密码失败");
            }
            //修改密码
            int i = await _userInforServer.UptUserPassWord(pwdNew, _userManager.UserId);
            if (i <= 0)
                throw Oops.Bah("修改密码失败");
        }
        /// <summary>
        /// x天后提醒用户修改密码
@@ -244,29 +237,10 @@
        /// <param name="RoleName">角色名称</param>
        /// <returns></returns>
        [HttpGet]
        public IActionResult GetRolesList(string RoleNo, string RoleName)
        [ServiceFilter(typeof(ApiResponseActionFilter))]
        public async Task<List<RoleDto>> GetRolesList(string RoleNo, string RoleName)
        {
            //获取当前操作用户id
            var claimsIdentity = this.User.Identity as ClaimsIdentity;
            if (claimsIdentity == null)
            {
                throw new Exception("未获取到用户信息");
            }
            string UserId = claimsIdentity.FindFirst(ClaimTypes.Name)?.Value;
            if (string.IsNullOrWhiteSpace(UserId))
            {
                throw new Exception("未获取到用户信息");
            }
            //查询
            List<RoleDto> roles = _rolesServer.GetRoleList(RoleNo, RoleName, UserId);
            //返回数据
            return Ok(new
            {
                data = roles,
                code = 0,
                msg = "获取成功"
            });
            return await _rolesServer.GetRoleList(RoleNo, RoleName);
        }
        /// <summary>
@@ -275,15 +249,10 @@
        /// <param name="roleid">角色id</param>
        /// <returns></returns>
        [HttpGet]
        public IActionResult GetRolesListById(int roleid)
        [ServiceFilter(typeof(ApiResponseActionFilter))]
        public async Task<SysRoles> GetRolesListById(int roleid)
        {
            SysRoles role = _rolesServer.GetRoleInfoById(roleid);
            return Ok(new
            {
                data = role,
                code = 0,
                msg = "获取成功"
            });
            return await _rolesServer.GetRoleInfoById(roleid);
        }
        /// <summary>
@@ -293,52 +262,19 @@
        /// <returns></returns>
        /// <exception cref="System.Exception">捕获异常</exception>
        [HttpPost]
        public async Task<IActionResult> InsertRoleInfo(RoleDto roledto)
        [ServiceFilter(typeof(ApiResponseActionFilter))]
        [UnitOfWork]
        public async Task InsertRoleInfo(RoleDto roledto)
        {
            //捕获异常
            try
            await _rolesServer.InsertRoleInfo(roledto);
            await _operation.InsertOperation(new OperationInputVm()
            {
                //获取当前操作用户id
                var claimsIdentity = this.User.Identity as ClaimsIdentity;
                var userId = claimsIdentity.FindFirst(ClaimTypes.Name)?.Value;
                int uid = Convert.ToInt32(userId);
                //创建人
                roledto.CreateUser = uid;
                int i = await _rolesServer.InsertRoleInfo(roledto);
                if (i == 0)
                {
                    return Ok(new
                    {
                        data = i,
                        code = 1,
                        msg = "新增失败"
                    });
                }
                else if (i == 3)
                {
                    return Ok(new
                    {
                        data = i,
                        code = 3,
                        msg = "角色号必须唯一"
                    });
                }
                else
                {
                    await _operation.InsertOperation("系统设置", "角色权限", roledto.RoleNo, "添加", "添加角色信息 角色号:" + roledto.RoleNo, uid);
                    return Ok(new
                    {
                        data = i,
                        code = 0,
                        msg = "新增成功"
                    });
                }
            }
            catch (System.Exception ex)
            {
                //抛出异常
                throw new System.Exception("角色新增异常", ex);
            }
                ParentName = "系统设置",
                MenuName = "角色权限",
                FkNo = roledto.RoleNo,
                TypeName = "添加",
                Msg = "添加角色信息 角色号:" + roledto.RoleNo
            });
        }
        /// <summary>
@@ -348,45 +284,21 @@
        /// <returns></returns>
        /// <exception cref="System.Exception"></exception>
        [HttpGet]
        public async Task<IActionResult> DeleteRoleInfo(int roleids)
        [ServiceFilter(typeof(ApiResponseActionFilter))]
        [UnitOfWork]
        public async Task DeleteRoleInfo(int roleids)
        {
            //捕获异常
            try
            //根据角色id获取角色信息
            SysRoles role = await _rolesServer.GetRoleInfoById(roleids);
            await _rolesServer.DeleteRoleInfo(role);
            await _operation.InsertOperation(new OperationInputVm()
            {
                //根据角色id获取角色信息
                SysRoles role = _rolesServer.GetRoleInfoById(roleids);
                //获取当前操作用户id
                var claimsIdentity = this.User.Identity as ClaimsIdentity;
                var userId = claimsIdentity.FindFirst(ClaimTypes.Name)?.Value;
                int uid = Convert.ToInt32(userId);
                role.UpdateUser = uid;
                int i = await _rolesServer.DeleteRoleInfo(role);
                //判断是否删除成功
                if (i == 0)
                {
                    return Ok(new
                    {
                        data = i,
                        code = 1,
                        msg = "删除失败"
                    });
                }
                else
                {
                    await _operation.InsertOperation("系统设置", "角色权限", role.RoleNo, "删除", "删除角色信息 角色号:" + role.RoleNo, uid);
                    return Ok(new
                    {
                        data = i,
                        code = 0,
                        msg = "删除成功"
                    });
                }
            }
            catch (System.Exception ex)
            {
                //抛出异常
                throw new System.Exception("角色删除异常", ex);
            }
                ParentName = "系统设置",
                MenuName = "角色权限",
                FkNo = role.RoleNo,
                TypeName = "删除",
                Msg = "删除角色信息 角色号:" + role.RoleNo
            });
        }
        /// <summary>
@@ -396,45 +308,19 @@
        /// <returns></returns>
        /// <exception cref="System.Exception">捕获异常</exception>
        [HttpPost]
        public async Task<IActionResult> UpdateRolesInfo(SysRoles role)
        [ServiceFilter(typeof(ApiResponseActionFilter))]
        [UnitOfWork]
        public async Task UpdateRolesInfo(SysRoles role)
        {
            //捕获异常
            try
            await _rolesServer.UpdateRoleInfo(role);
            await _operation.InsertOperation(new OperationInputVm()
            {
                //获取当前操作用户id
                var claimsIdentity = this.User.Identity as ClaimsIdentity;
                var userId = claimsIdentity.FindFirst(ClaimTypes.Name)?.Value;
                int uid = Convert.ToInt32(userId);
                //更改人
                role.UpdateUser = uid;
                int i = await _rolesServer.UpdateRoleInfo(role);
                //判断是否编辑成功
                if (i == 0)
                {
                    return Ok(new
                    {
                        data = i,
                        code = 1,
                        msg = "编辑失败"
                    });
                }
                else
                {
                    await _operation.InsertOperation("系统设置", "角色权限", role.RoleNo, "修改", "修改角色信息 角色号:" + role.RoleNo, uid);
                    return Ok(new
                    {
                        data = i,
                        code = 0,
                        msg = "编辑成功"
                    });
                }
            }
            catch (System.Exception ex)
            {
                //抛出异常
                throw new System.Exception("编辑角色异常", ex);
            }
                ParentName = "系统设置",
                MenuName = "角色权限",
                FkNo = role.RoleNo,
                TypeName = "编辑",
                Msg = "修改角色信息 角色号:" + role.RoleNo
            });
        }
        #endregion
@@ -446,16 +332,10 @@
        /// </summary>
        /// <returns></returns>
        [HttpGet]
        public IActionResult GetRBACLists(int id)
        [ServiceFilter(typeof(ApiResponseActionFilter))]
        public async Task<List<FunctionMenuDto>> GetRBACLists(int id)
        {
            //List<RoleRightDto> roleright =
            var obj = _rBACServer.GetMenuByroleIdNew(id);
            return Ok(new
            {
                data = obj,
                code = 0,
                msg = "成功"
            });
            return await _rBACServer.GetMenuByroleIdNew(id);
        }
@@ -464,27 +344,10 @@
        /// </summary>
        /// <returns></returns>
        [HttpGet]
        public IActionResult GetRoleRightRBAC(int id, string MenuNo)
        [ServiceFilter(typeof(ApiResponseActionFilter))]
        public async Task<List<FunctionMenuDto>> GetRoleRightRBAC(int id, string MenuNo)
        {
            //获取当前操作用户id
            var claimsIdentity = this.User.Identity as ClaimsIdentity;
            if (claimsIdentity == null)
            {
                throw new Exception("未获取到用户信息");
            }
            string UserId = claimsIdentity.FindFirst(ClaimTypes.Name)?.Value;
            if (string.IsNullOrWhiteSpace(UserId))
            {
                throw new Exception("未获取到用户信息");
            }
            List<FunctionMenuDto> menudto = _rBACServer.GetRoleRightRBAC(MenuNo, UserId);
            return Ok(new
            {
                data = menudto,
                code = 0,
                msg = "成功"
            });
            return await _rBACServer.GetRoleRightRBAC(MenuNo, UserId);
        }
        /// <summary>
@@ -492,15 +355,10 @@
        /// </summary>
        /// <returns></returns>
        [HttpGet]
        public IActionResult GetRoleRightLists(int id)
        [ServiceFilter(typeof(ApiResponseActionFilter))]
        public async Task<List<RoleRightDto>> GetRoleRightLists(int id)
        {
            List<RoleRightDto> roleRightDtos = _rBACServer.GetRoleRightList(id);
            return Ok(new
            {
                data = roleRightDtos,
                code = 0,
                msg = "成功"
            });
            return await _rBACServer.GetRoleRightList(id);
        }
        /// <summary>
@@ -509,33 +367,10 @@
        /// </summary>
        /// <returns></returns>
        [HttpGet]
        public IActionResult GetRoleRightList()
        [ServiceFilter(typeof(ApiResponseActionFilter))]
        public async Task<List<RoleRightDto>> GetRoleRightList()
        {
            try
            {
                //获取当前登录的用户ID
                var claimsIdentity = this.User.Identity as ClaimsIdentity;
                if (claimsIdentity == null)
                {
                    return Ok(new { code = 1, msg = "为获取到当前操作人信息" });
                }
                var userId = claimsIdentity.FindFirst(ClaimTypes.Name)?.Value;
                if (string.IsNullOrWhiteSpace(userId))
                {
                    return Ok(new { code = 1, msg = "为获取到当前操作人信息" });
                }
                var roleRightDtos = _roleRightServer.GetRoleMenuList(int.Parse(userId));
                return Ok(new
                {
                    data = roleRightDtos,
                    msg = "成功",
                    code = 0
                });
            }
            catch (Exception e)
            {
                return Ok(new { msg = e.Message, code = 0 });
            }
            return await _roleRightServer.GetRoleMenuList();
        }
        /// <summary>
@@ -544,15 +379,10 @@
        /// <param name="id">角色权限id</param>
        /// <returns></returns>
        [HttpGet]
        public IActionResult GetRoleRightOneListById(int id)
        [ServiceFilter(typeof(ApiResponseActionFilter))]
        public async Task<List<SysRoleRight>> GetRoleRightOneListById(int id)
        {
            List<SysRoleRight> roleRights = _roleRightServer.GetRoleRightOneListById(id);
            return Ok(new
            {
                data = roleRights,
                msg = "成功",
                core = 0
            });
            return await _roleRightServer.GetRoleRightOneListById(id);
        }
        /// <summary>
@@ -563,46 +393,22 @@
        /// <returns></returns>
        /// <exception cref="Exception">捕获异常</exception>
        [HttpPost]
        public async Task<IActionResult> InsertRoleRight(string MenuNo, int id)
        [ServiceFilter(typeof(ApiResponseActionFilter))]
        [UnitOfWork]
        public async Task InsertRoleRight(string MenuNo, int id)
        {
            //捕获异常
            try
            //根据Id获取角色号
            SysRoles roles = await _rolesServer.GetRoleInfoById(id);
            //保存角色权限信息
            await _roleRightServer.InsertRoleRight(MenuNo, roles.RoleNo);
            await _operation.InsertOperation(new OperationInputVm()
            {
                //获取当前操作用户id
                var claimsIdentity = this.User.Identity as ClaimsIdentity;
                var userId = claimsIdentity.FindFirst(ClaimTypes.Name)?.Value;
                //根据Id获取角色号
                SysRoles roles = _rolesServer.GetRoleInfoById(id);
                //保存角色权限信息
                int i = await _roleRightServer.InsertRoleRight(MenuNo, roles.RoleNo, userId);
                //判断是否新增成功
                if (i == 0)
                {
                    return Ok(new
                    {
                        data = i,
                        msg = "分配失败",
                        code = 1
                    });
                }
                else
                {
                    await _operation.InsertOperation("系统设置", "角色权限", roles.RoleNo, "修改", "分配角色权限 角色号:" + roles.RoleNo, Convert.ToInt32(userId));
                    return Ok(new
                    {
                        data = i,
                        msg = "分配成功",
                        code = 0
                    });
                }
            }
            catch (Exception ex)
            {
                //抛出异常
                throw new Exception("新增角色权限信息异常", ex);
            }
                ParentName = "系统设置",
                MenuName = "角色权限",
                FkNo = roles.RoleNo,
                TypeName = "编辑",
                Msg = "分配角色权限 角色号:" + roles.RoleNo
            });
        }
        #endregion
@@ -2287,22 +2093,12 @@
        /// <summary>
        /// 获取操作日志信息列表
        /// </summary>
        /// <param name="menuName">菜单名称</param>
        /// <param name="type">操作类型</param>
        /// <param name="msg">操作内容</param>
        /// <param name="menuNo">菜单号</param>
        /// <param name="parentNo">模块号</param>
        /// <returns></returns>
        [HttpGet]
        public IActionResult GetSysOperationList(string menuName, string type, string msg, string menuNo, string parentNo)
        [HttpPost]
        [ServiceFilter(typeof(ApiResponseActionFilter))]
        public async Task<SqlSugarPagedList<OperationDto>> GetSysOperationList(GetOperationVm model)
        {
            List<OperationDto> operation = _operation.GetSysOperationList(menuName, type, msg, menuNo, parentNo);
            return Ok(new
            {
                data = operation,
                code = 0,
                msg = "成功"
            });
            return await _operation.GetSysOperationList(model);
        }
        /// <summary>
@@ -2311,15 +2107,10 @@
        /// <param name="dicName">字典名称</param>
        /// <returns></returns>
        [HttpGet]
        public IActionResult GetDicTypeList(string dicName)
        [ServiceFilter(typeof(ApiResponseActionFilter))]
        public async Task<List<SysDictionary>> GetDicTypeList(string dicName)
        {
            List<SysDictionary> diclist = _operation.GetDicTypeList(dicName);
            return Ok(new
            {
                data = diclist,
                code = 0,
                msg = "成功"
            });
            return await _operation.GetDicTypeList(dicName);
        }
        #endregion