基本信息
源码名称:asp.net 快速开发框架源码下载(JuCheap.2.0)
源码大小:25.69M
文件格式:.zip
开发语言:ASP
更新时间:2018-07-17
   友情提示:(无需注册或充值,赞助后即可获取资源下载链接)

     嘿,亲!知识可是无价之宝呢,但咱这精心整理的资料也耗费了不少心血呀。小小地破费一下,绝对物超所值哦!如有下载和支付问题,请联系我们QQ(微信同号):813200300

本次赞助数额为: 5 元 
   源码介绍

适合中级人员使用的教程类

使用 MVC EF Bootstrap3.3.4 版本开发的后台管理系统模板,采用了左右两栏式等多种布局形式,使用了Html5 CSS3等现代技术,提供了诸多的强大的可以重新组合的UI组件,丰富的jQuery插件,可以用于所有的Web应用程序,如网站管理后台,会员中心,CMS,CRM,OA后台系统的模板,JuCheap使用到的技术完全开源,支持自定义扩展,你可以根据自己的需求定制一套属于你的后台管理模板。 














using System;
using System.Collections.Generic;
using System.Linq;
using System.Linq.Expressions;
using System.Web.Mvc;
using JuCheap.Core.Extentions;
using JuCheap.Service.Abstracts;
using JuCheap.Service.Dto;
using JuCheap.Web.Models;

namespace JuCheap.Web.Areas.Adm.Controllers
{
    /// <summary>
    /// role
    /// </summary>
    public class RoleController : AdmBaseController
    {
        public IRoleService roleService { set; get; }

        public IRoleMenuService roleMenuService { get; set; }

        #region Page

        // GET: Adm/Role
        public ActionResult Index(int moudleId, int menuId, int btnId)
        {
            GetButtons(menuId);
            return View();
        }


        public ActionResult Add(string moudleId, string menuId, string btnId)
        {
            return View();
        }


        public ActionResult Edit(int moudleId, int menuId, int btnId, int id)
        {
            var model = roleService.GetOne(item => item.Id == id);
            return View(model);
        }

        public ActionResult AuthMenus(int moudleId, int menuId, int btnId)
        {
            ViewBag.Menus = menuService.Query(item => !item.IsDeleted, item => item.Id, false);
            return View();
        }

        #endregion

        #region Ajax

        public JsonResult GetList(int moudleId, int menuId, int btnId)
        {
            var queryBase = new QueryBase
            {
                Start = Request["start"].ToInt(),
                Length = Request["length"].ToInt(),
                Draw = Request["draw"].ToInt(),
                SearchKey = Request["keywords"]
            };
            Expression<Func<RoleDto, bool>> exp = item => !item.IsDeleted;
            if (!queryBase.SearchKey.IsBlank())
                exp = exp.And(item => item.Name.Contains(queryBase.SearchKey));

            var dto = roleService.GetWithPages(queryBase, exp, Request["orderBy"], Request["orderDir"]);
            return Json(dto, JsonRequestBehavior.AllowGet);
        }

        [HttpPost]
        public ActionResult Add(int moudleId, int menuId, int btnId, RoleDto dto)
        {
            roleService.Add(dto);
            return RedirectToAction("Index", RouteData.Values);
        }

        [HttpPost]
        public ActionResult Edit(int moudleId, int menuId, int btnId, RoleDto dto)
        {
            roleService.Update(dto);
            return RedirectToAction("Index", RouteData.Values);
        }


        [HttpPost]
        public JsonResult Delete(int moudleId, int menuId, int btnId, List<int> ids)
        {
            var res = new Result<string>();

            if (ids != null && ids.Any())
                res.flag = roleService.Delete(item => ids.Contains(item.Id));

            return Json(res, JsonRequestBehavior.AllowGet);
        }

        [HttpPost]
        public JsonResult AuthMenus(int moudleId, int menuId, int btnId, AuthMenuDto dto)
        {
            var res = new Result<int>();

            foreach (var roleId in dto.RoleIds)
            {
                roleMenuService.Delete(item => item.RoleId == roleId);
                var newRoleMenus = dto.MenuIds.Select(item => new RoleMenuDto {RoleId = roleId, MenuId = item}).ToList();
                roleMenuService.Add(newRoleMenus);
            }

            res.flag = true;

            return Json(res, JsonRequestBehavior.AllowGet);
        }

        [HttpPost]
        public JsonResult GetRoleMenusByRoleId(int moudleId, int menuId, int btnId, int id)
        {
            var res = new Result<List<RoleMenuDto>>();
            var list = roleMenuService.Query(item => item.RoleId == id, item => item.Id, false);
            res.flag = true;
            res.data = list;
            return Json(res, JsonRequestBehavior.AllowGet);
        }

        #endregion
    }
}