ok-admin框架,第十天角色编辑



@model StudentSys.Models.SysRole
@{
ViewBag.Title = "更新角色";
Layout = null;
}




更新角色














value="@Model.id">
lay-verify="required" value="@Model.name">





lay-verify="required" value="@Model.remark">





















    后台代码:

    ///


    /// 更新页面
    ///

    ///
    public ActionResult Update()
    {
    int id = int.Parse(Request["id"]);
    YuanGongDb dbcontext = new YuanGongDb();
    var data = dbcontext.SysRole.FirstOrDefault(o => o.id == id);
    var rolePermission = dbcontext.RoleInMenu.Where(o => o.Rid == id).ToList();
    List listZtree = new List();
    ZTreeData ztree_model = null;
    var ztree_demo = dbcontext.SysMenu.Where(p => p.pid == 0).ToList();
    if(ztree_demo!=null)
    {
    foreach (var item in ztree_demo)
    {
    ztree_model = new ZTreeData();
    ztree_model.id = item.id.ToString();
    ztree_model.pId = item.pid.ToString();
    ztree_model.name = item.name;
    ztree_model.value = item.id.ToString();
    var isExist= rolePermission.Where(o => o.Mid == item.id).FirstOrDefault();
    ztree_model.Checked = isExist!=null?true:false;
    listZtree.Add(ztree_model);
    }
    }
    ViewBag.PermissionList = JsonConvert.SerializeObject(listZtree);
    if(rolePermission!=null&& rolePermission.Count>0)
    {
    string ids = "";
    foreach (var item in rolePermission)
    {
    ids += "," + item.Mid.ToString();
    }
    ViewBag.PermissionIDs = ids.ToString();

    }
    else
    {
    ViewBag.PermissionIDs = "";
    }


    return View(data);
    }

    ///


    /// 更新用户
    ///

    ///
    ///
    [HttpPost]
    public string Update(SysRole _user, string PermissionIDs)
    {

    YuanGongDb dbcontext = new YuanGongDb();
    ResponseData res = new ResponseData();//返回的数据格式code,msg
    var entity = dbcontext.Set().FirstOrDefault(o => o.id == _user.id);
    entity.name = _user.name;
    entity.remark = _user.remark;
    entity.updatetime = DateTime.Now.ToString();
    if (dbcontext.SaveChanges() > 0)
    {

    var roleMenuData= dbcontext.RoleInMenu.Where(o => o.Rid == entity.id).ToList();
    if(roleMenuData!=null)
    {
    foreach (var item in roleMenuData)
    {
    dbcontext.RoleInMenu.Remove(item);
    }
    }
    RoleInMenu roleMenuModel = null;
    string[] mids = PermissionIDs.Split(',');
    for (int i = 0; i < mids.Length; i++)
    {
    roleMenuModel = new RoleInMenu();
    roleMenuModel.Mid =int.Parse(mids[i].ToString());
    roleMenuModel.Rid = entity.id;
    roleMenuModel.createtime = DateTime.Now.ToString();
    dbcontext.RoleInMenu.Add(roleMenuModel);
    dbcontext.SaveChanges();
    }

    res.code = 0;
    res.msg = "更新成功";
    var data = JsonConvert.SerializeObject(res);
    return data;
    }
    else
    {
    res.code = 1;
    res.msg = "更新失败";
    var data = JsonConvert.SerializeObject(res);
    return data;
    }
    }