winform+dev的前后台分离标准项目
lg
2024-08-30 01656f0ff2bf7b62ef0fb039e24be888849ad728
权限
已添加1个文件
已修改5个文件
292 ■■■■■ 文件已修改
WebApi/Gs.User/Modes/MenuAction.cs 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebApi/Gs.User/Modes/Sys_User.cs 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebApi/Gs.User/Service/MenuActionController.cs 72 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebApi/Gs.User/Service/OrganizationController.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebApi/Gs.User/Service/RoleController.cs 194 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebApi/Gs.User/Service/UserController.cs 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebApi/Gs.User/Modes/MenuAction.cs
@@ -57,5 +57,11 @@
        /// </summary>
        public int isSys { get; set; }
        /// <summary>
        /// ç»„织Guid,主要用在附加权限
        /// </summary>
        public string orgGuid { get; set; }
    }
}
WebApi/Gs.User/Modes/Sys_User.cs
@@ -177,6 +177,20 @@
            set { _issys = value; }
            get { return _issys; }
        }
        /// <summary>
        /// é”å®šè¯´æ˜Ž
        /// </summary>
        public string  isLockedTxt
        {
            get; set;
        }
        /// <summary>
        /// é”å®šè¯´æ˜Ž
        /// </summary>
        public string isSysTxt
        {
            get; set;
        }
        #endregion Model
    }
WebApi/Gs.User/Service/MenuActionController.cs
@@ -9,6 +9,7 @@
using System.Text;
using System.Threading.Tasks;
using Gs.User.Modes;
using Microsoft.Extensions.Primitives;
namespace Gs.User.Service
{
@@ -213,5 +214,76 @@
                return ReturnDto<dynamic>.QuickReturn(m, ReturnCode.Default, "读取失败!");
            }
        }
        /// <summary>
        /// è¯»å–功能菜单列表,分组织展现权限菜单
        /// </summary>
        /// <returns></returns>
        [RequestMethod(RequestMethods.POST)]
        public ReturnDto<PageList<MenuAction>> GetListPageByOrg()
        {
            System.Text.StringBuilder _orgSql = new StringBuilder();
            _orgSql.Append("select org.guid,null as upGuid,org.name,org.status from [dbo].[sys_Organization] org   where upGuid is not null ");
            DataSet _orgDset = new DataSet();
            System.Text.StringBuilder sbSql = new StringBuilder();
            try
            {
                _orgDset = Gs.Toolbox.DbHelperSQL.Query(_orgSql.ToString());
                foreach (DataRow row in _orgDset.Tables[0].Rows)
                {
                    if (sbSql.Length > 0)
                        sbSql.Append(" union all");
                    sbSql.Append(" select org.guid,null as upGuid,org.name,org.status,'"+ row["guid"].ToString() + "' as orgGuid from [dbo].[sys_Organization] org where org.guid ='" + row["guid"].ToString() + "'");
                    sbSql.Append(" union all");
                    sbSql.Append(" select ma.guid,isnull(ma.upGuid,'" + row["guid"].ToString() + "') as upGuid,ma.name,ma.status,'"+ row["guid"].ToString() + "' as orgGuid from sys_MenuAction ma");
                }
            }
            catch (Exception ex)
            {
                Gs.Toolbox.LogHelper.Debug(this.ToString(), "GetListPage error:" + ex.Message);
                return ReturnDto<PageList<MenuAction>>.QuickReturn(default(PageList<MenuAction>), ReturnCode.Exception, "读取失败");
            }
            DataSet dset = new DataSet();
            try
            {
                dset = Gs.Toolbox.DbHelperSQL.Query(sbSql.ToString());
            }
            catch (Exception ex)
            {
                Gs.Toolbox.LogHelper.Debug(this.ToString(), "GetListPage error:" + ex.Message);
                return ReturnDto<PageList<MenuAction>>.QuickReturn(default(PageList<MenuAction>), ReturnCode.Exception, "读取失败");
            }
            PageList<MenuAction> _pglist = new PageList<MenuAction>
            {
                total = 0,
                everyPageSize = 0,
                pages = 0,
                list = new List<MenuAction>()
            };
            if (dset != null && dset.Tables.Count > 0 && dset.Tables[0].Rows.Count > 0)//有数据
            {
                int intTotal = 999;
                int pages = 1;
                _pglist.total = intTotal;
                _pglist.everyPageSize = 1;
                _pglist.pages = pages;
                foreach (DataRow dr in dset.Tables[0].Rows)
                {
                    _pglist.list.Add(
                        new MenuAction()
                        {
                            guid = Guid.Parse(dr["guid"].ToString()),
                            upGuid = dr["upGuid"].ToString().Length > 0 ? Guid.Parse(dr["upGuid"].ToString()) : null,
                            name = dr["name"].ToString(),
                            status = int.Parse(dr["status"].ToString()),
                            orgGuid = dr["orgGuid"].ToString(),
                        }
                    );
                }
            }
            return ReturnDto<PageList<MenuAction>>.QuickReturn(_pglist, ReturnCode.Success, "读取成功");
        }
    }
}
WebApi/Gs.User/Service/OrganizationController.cs
@@ -82,7 +82,7 @@
        /// <param name="model"></param>
        /// <returns></returns>
        [RequestMethod(RequestMethods.POST)]
        public ReturnDto<int?> DeleteModel([FromBody] MenuAction model)
        public ReturnDto<int?> DeleteModel([FromBody] dynamic model)
        {
            int rtnInt = (int)ReturnCode.Default;
            int cont = 0;
WebApi/Gs.User/Service/RoleController.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,194 @@
using Gs.Toolbox;
using Gs.User.Modes;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc;
using System;
using System.Collections.Generic;
using System.Data.SqlClient;
using System.Data;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Http.HttpResults;
namespace Gs.User.Service
{
    [ApiGroup(ApiGroupNames.Auth)]
    public class RoleController : IRomteService
    {
        /// <summary>
        /// è¯»å–列表,支持分页
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        [RequestMethod(RequestMethods.POST)]
        public ReturnDto<PageList<dynamic>> GetListPage([FromBody] PageQuery model)
        {
            int currentPage = model.currentPage;
            int everyPageSize = model.everyPageSize;
            string sortName = string.IsNullOrEmpty(model.sortName) ? "a.createDate" : model.sortName;
            System.Text.StringBuilder sbSql = new StringBuilder();
            sbSql.Append("select * from ");
            sbSql.Append("( ");
            sbSql.Append("select top 100000 ROW_NUMBER() over(order by " + sortName + " " + model.sortOrder + ") as rowIndex,* from sys_Role a where 1=1" + model.keyWhere);
            sbSql.Append(") as T ");
            sbSql.Append(" where T.rowindex>(" + currentPage + "-1)*" + everyPageSize + " and  T.rowindex<=" + currentPage + "*" + everyPageSize + "");
            sbSql.Append(" select count(1) as intTotal  from sys_Role a where 1=1 " + model.keyWhere).ToString();
            DataSet dset = new DataSet();
            try
            {
                dset = Gs.Toolbox.DbHelperSQL.Query(sbSql.ToString());
            }
            catch (Exception ex)
            {
                Gs.Toolbox.LogHelper.Debug(this.ToString(), "GetListPage error:" + ex.Message);
                return ReturnDto<PageList<dynamic>>.QuickReturn(default(PageList<dynamic>), ReturnCode.Exception, "读取失败");
            }
            PageList<dynamic> _pglist = new PageList<dynamic>
            {
                total = 0,
                everyPageSize = 0,
                pages = 0,
                list = new List<dynamic>()
            };
            if (dset != null && dset.Tables.Count > 0 && dset.Tables[0].Rows.Count > 0)//有数据
            {
                int intTotal = int.Parse(dset.Tables[1].Rows[0]["intTotal"].ToString());
                int pages = (intTotal % everyPageSize != 0) ? (intTotal / everyPageSize + 1) : (intTotal / everyPageSize);
                _pglist.total = intTotal;
                _pglist.everyPageSize = everyPageSize;
                _pglist.pages = pages;
                foreach (DataRow dr in dset.Tables[0].Rows)
                {
                    _pglist.list.Add(
                        new
                        {
                            guid = Guid.Parse(dr["guid"].ToString()),
                            roleName = dr["roleName"].ToString(),
                            rolRemark = dr["rolRemark"].ToString(),
                            createDate = dr["createDate"].ToString(),
                            createBy = dr["createBy"].ToString(),
                            lastUpdateDate = dr["lastUpdateDate"].ToString(),
                            lastUpdatedBy = dr["lastUpdatedBy"].ToString(),
                            status = dr["status"].ToString(),
                        }
                    );
                }
            }
            return ReturnDto<PageList<dynamic>>.QuickReturn(_pglist, ReturnCode.Success, "读取成功");
        }
        /// <summary>
        /// åˆ é™¤
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        [RequestMethod(RequestMethods.POST)]
        public ReturnDto<int?> DeleteModel([FromBody] dynamic model)
        {
            int rtnInt = (int)ReturnCode.Default;
            int cont = 0;
            try
            {
                rtnInt = DbHelperSQL.ExecuteSql("delete from sys_Role where guid='" + model.guid.ToString() + "'");
            }
            catch (Exception ex)
            {
                LogHelper.Debug(this.ToString(), "DeleteModel error:" + ex.Message);
                rtnInt = (int)ReturnCode.Exception;
            }
            if (rtnInt > 0)
                return ReturnDto<int>.QuickReturn(default(int?), ReturnCode.Success, "操作成功,共删除" + rtnInt.ToString() + "条数据!");
            else
                return ReturnDto<int>.QuickReturn(default(int?), ReturnCode.Exception, "删除失败,请重试!");
        }
        /// <summary>
        /// å¢žåŠ 
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        [RequestMethod(RequestMethods.POST)]
        public ReturnDto<int?> EditModel([FromBody] dynamic model)
        {
            Guid? guid = UtilityHelper.GetGuid(model.guid.ToString());
            string roleName = model.roleName;
            string rolRemark = model.rolRemark;
            int status = model.status;
            int? rtnInt = (int)ReturnCode.Default;
            StringBuilder strSql = new StringBuilder();
            if (guid != null)
            {
                strSql.Append(" update sys_Role");
                strSql.Append(" set roleName=@roleName,rolRemark=@rolRemark,status=@status,lastUpdateDate=getdate()");
                strSql.Append(" where guid='" + guid + "'");
            }
            else
            {
                guid = Guid.NewGuid();
                strSql.Append("insert into sys_Role(");
                strSql.Append(" guid,roleName,rolRemark,status,createDate,lastUpdateDate)");
                strSql.Append(" values (");
                strSql.Append("'" + guid + "',@roleName,@rolRemark,@status,getdate(),getdate())");
            }
            SqlParameter[] parameters = {
             new SqlParameter("@roleName", roleName),
             new SqlParameter("@rolRemark", rolRemark),
             new SqlParameter("@status",status),
         };
            try
            {
                rtnInt = DbHelperSQL.ExecuteSql(strSql.ToString(), parameters);
            }
            catch (Exception ex)
            {
                LogHelper.Debug(this.ToString(), "EditModel error:" + ex.Message);
                rtnInt = (int)ReturnCode.Exception;
            }
            if (rtnInt > 0)
                return ReturnDto<int>.QuickReturn(rtnInt, ReturnCode.Success, "操作成功!");
            else
                return ReturnDto<int>.QuickReturn(rtnInt, ReturnCode.Exception, "增加失败,请重试!");
        }
        /// <summary>
        /// è¯»å–
        /// </summary>
        /// <param name="guid"></param>
        /// <returns></returns>
        [RequestMethod(RequestMethods.POST)]
        [AllowAnonymous]
        public ReturnDto<MenuAction> GetModel([FromBody] dynamic model)
        {
            dynamic m = new System.Dynamic.ExpandoObject();
            System.Text.StringBuilder sbSql = new StringBuilder();
            sbSql.Append("select top 1 * from sys_Role where 1=1 and guid='" + model.guid.ToString() + "' ");
            try
            {
                DataSet dset = new DataSet();
                dset = DbHelperSQL.Query(sbSql.ToString());
                if (dset != null && dset.Tables.Count > 0 && dset.Tables[0].Rows.Count > 0)
                {
                    System.Data.DataRow dr = dset.Tables[0].Rows[0];
                    m.guid = Guid.Parse(dr["guid"].ToString());
                    m.roleName = dr["roleName"].ToString();
                    m.rolRemark = dr["rolRemark"].ToString();
                    m.createDate = dr["createDate"].ToString();
                    m.createBy = dr["createBy"].ToString();
                    m.lastUpdateDate = dr["lastUpdateDate"].ToString();
                    m.lastUpdatedBy = dr["lastUpdatedBy"].ToString();
                    m.status = dr["status"].ToString();
                    return ReturnDto<dynamic>.QuickReturn(m, ReturnCode.Success, "读取成功!");
                }
                else
                    return ReturnDto<dynamic>.QuickReturn(m, ReturnCode.Default, "读取失败!");
            }
            catch (Exception ex)
            {
                LogHelper.Debug(this.ToString(), "GetModel error:" + ex.Message);
                return ReturnDto<dynamic>.QuickReturn(m, ReturnCode.Default, "读取失败!");
            }
        }
    }
}
WebApi/Gs.User/Service/UserController.cs
@@ -127,7 +127,8 @@
                                        }
                                    );
                                }
                                return ReturnDto<dynamic>.QuickReturn(m, ReturnCode.Success, "登录成功!");
                                string _msg = "欢迎使用某某公司EMS系统,你的角色为【管理员】当前共有【20】条信息未处理";
                                return ReturnDto<dynamic>.QuickReturn(m, ReturnCode.Success, _msg);
                            }
                        }
                    }
@@ -263,6 +264,7 @@
                    {
                        _model.isSys = int.Parse(row["isSys"].ToString());
                    }
                    _model.isLockedTxt = row["isLocked"].ToString() != "1" ? "正常" : "被锁定";
                    _pglist.list.Add(_model);
                }
            }