示例#1
0
        ///// <summary>
        ///// 获取数据列表(分页)
        ///// </summary>
        //public List<TbRole> GetDataListForPage(TbRoleRequset param, string keyword)
        //{
        //    //组装查询语句
        //    #region 模糊搜索条件

        //    var where = new Where<TbRole>();
        //    if (!string.IsNullOrEmpty(keyword))
        //    {
        //        where.And(d => d.RoleCode.Like(keyword));
        //        where.Or(d => d.RoleName.Like(keyword));
        //    }

        //    #endregion
        //    var orderBy = OrderByOperater.ASC;
        //    if (param.sord.Equals("desc"))
        //        orderBy = OrderByOperater.DESC;
        //    try
        //    {
        //        //取总数,以计算共多少页。
        //        var dateCount = Repository<TbRole>.Count(where);
        //        var orderByClip = new OrderByClip(new Field(param.sidx), orderBy);//排序字段
        //        var list = Repository<TbRole>.Query(where, orderByClip, param.sord, param.rows, param.page).ToList();
        //        param.records = dateCount;
        //        return list;
        //    }
        //    catch (Exception)
        //    {
        //        throw;
        //    }
        //}

        /// <summary>
        /// 获取数据列表(分页)
        /// </summary>
        public PageModel GetDataListForPage(TbRoleRequset request)
        {
            //组装查询语句
            #region 模糊搜索条件

            var where = new Where <TbRole>();
            if (!string.IsNullOrWhiteSpace(request.RoleName))
            {
                where.And(p => p.RoleName.Contains(request.RoleName));
            }
            if (!string.IsNullOrWhiteSpace(request.DepartmentId))
            {
                where.And(p => p.DepartmentId == request.DepartmentId);
            }
            #endregion

            try
            {
                var ret = Db.Context.From <TbRole>()
                          .Select(TbRole._.All).Where(where).OrderByDescending(d => d.RoleId).ToPageList(request.rows, request.page);
                return(ret);
            }
            catch (Exception)
            {
                throw;
            }
        }
示例#2
0
        /// <summary>
        /// 新增数据(单条)
        /// </summary>
        public AjaxResult Insert(TbRoleRequset request)
        {
            if (request == null)
            {
                return(AjaxResult.Warning("参数错误"));
            }
            try
            {
                var model1 = Repository <TbRole> .First(d => d.RoleName == request.RoleName);

                if (model1 != null)
                {
                    return(AjaxResult.Error("角色名称重复"));
                }
                var model = MapperHelper.Map <TbRoleRequset, TbRole>(request);
                model.RoleCode   = request.RoleCode;
                model.RoleName   = request.RoleName;
                model.RoleDetail = request.RoleDetail;
                model.State      = "启用";
                var count = Repository <TbRole> .Insert(model);

                if (count > 0)
                {
                    return(AjaxResult.Success());
                }
                return(AjaxResult.Error());
            }
            catch (Exception)
            {
                return(AjaxResult.Error());
            }
        }
示例#3
0
        /// <summary>
        /// 新增数据(单条)
        /// </summary>
        public AjaxResult CopyRole(TbRoleRequset request, string roleCode)
        {
            if (request == null)
            {
                return(AjaxResult.Warning("参数错误"));
            }
            try
            {
                var model1 = Repository <TbRole> .First(d => d.RoleName == request.RoleName);

                if (model1 != null)
                {
                    return(AjaxResult.Error("角色名称重复"));
                }
                var model = MapperHelper.Map <TbRoleRequset, TbRole>(request);
                model.RoleCode   = request.RoleCode;
                model.RoleName   = request.RoleName;
                model.RoleDetail = request.RoleDetail;
                model.State      = "启用";
                //获取要拷贝的角色的角色权限
                var roleMenu = Repository <TbRoleMenu> .Query(p => p.RoleCode == roleCode).ToList();

                List <TbRoleMenu> roleMenuUpdate = new List <TbRoleMenu>();
                if (roleMenu != null && roleMenu.Count > 0)
                {
                    for (int i = 0; i < roleMenu.Count; i++)
                    {
                        var roleMenu1 = MapperHelper.Map <TbRoleMenu, TbRoleMenu>(roleMenu[i]);
                        roleMenu1.RoleCode = model.RoleCode;
                        roleMenuUpdate.Add(roleMenu1);
                    }
                }
                using (DbTrans trans = Db.Context.BeginTransaction())//使用事务
                {
                    Repository <TbRole> .Insert(trans, model);

                    if (roleMenuUpdate != null && roleMenuUpdate.Count > 0)
                    {
                        Repository <TbRoleMenu> .Insert(trans, roleMenuUpdate); //拷贝角色权限
                    }
                    trans.Commit();                                             //提交事务
                }
                return(AjaxResult.Success());
            }
            catch (Exception)
            {
                return(AjaxResult.Error());
            }
        }
示例#4
0
 public ActionResult SubmitForm(TbRoleRequset request, string type, string roleCodeOld)
 {
     if (type == "add")
     {
         var data = _role.Insert(request);
         return(Content(data.ToJson()));
     }
     else if (type == "copy")
     {
         var data = _role.CopyRole(request, roleCodeOld);
         return(Content(data.ToJson()));
     }
     else
     {
         var data = _role.Update(request);
         return(Content(data.ToJson()));
     }
 }
示例#5
0
        /// <summary>
        /// 修改数据(单条)
        /// </summary>
        public AjaxResult Update(TbRoleRequset request)
        {
            if (request == null)
            {
                return(AjaxResult.Warning("参数错误"));
            }
            try
            {
                var model = Repository <TbRole> .First(p => p.RoleCode == request.RoleCode);

                if (model == null)
                {
                    return(AjaxResult.Error("信息不存在"));
                }
                var model1 = Repository <TbRole> .First(d => d.RoleName == request.RoleName && d.RoleCode != request.RoleCode);

                if (model1 != null)
                {
                    return(AjaxResult.Error("角色名称重复"));
                }
                model.RoleCode   = request.RoleCode;
                model.RoleName   = request.RoleName;
                model.RoleDetail = request.RoleDetail;
                var count = Repository <TbRole> .Update(model);

                if (count > 0)
                {
                    return(AjaxResult.Success());
                }
                return(AjaxResult.Error());
            }
            catch (Exception)
            {
                return(AjaxResult.Error());
            }
        }
示例#6
0
        ///// <summary>
        ///// 获取分页列表数据
        ///// </summary>
        ///// <param name="request"></param>
        ///// <returns></returns>
        //[HttpGet]
        //public ActionResult GetGridJson(TbRoleRequset request, string keyword)
        //{
        //    var data = new
        //    {
        //        rows = _role.GetDataListForPage(request, keyword),
        //        total = request.total,
        //        page = request.page,
        //        records = request.records
        //    };
        //    return Content(data.ToJson());
        //}
        /// <summary>
        /// 获取分页列表数据
        /// </summary>
        /// <param name="request"></param>
        /// <returns></returns>
        public ActionResult GetGridJson(TbRoleRequset request)
        {
            var data = _role.GetDataListForPage(request);

            return(Content(data.ToJson()));
        }