public PermissionVm Init(long userId, long?id) { var toRet = new PermissionVm { Statuses = BlCode.LoadTable(userId, "PermissionStatus"), ActionMode = Enumerations.ActionMode.Add, Permission = new Permission { Status = "A", Module = new Module() } }; if (id != null) { var permission = LoadSingle(userId, Convert.ToInt64(id)); toRet.Permission = permission; //Create roles tree var blRole = new BlRole(); var roles = blRole.LoadForPermission(userId, permission.Module.Id, permission.Code); toRet.RolesTree = new JavaScriptSerializer().Serialize((from r in roles select new TreeItemVm { id = r.Id.ToUiString(), parent = r.ParentRole == null ? "#" : r.ParentRole.Id.ToString(), text = r.Code ?? "", icon = "fa fa-users colorMain", state = "{\"checked\": \"" + (r.IsActive ? "true" : "false") + "\"}", li_attr = "{\"class\" : \"form-control-label\"}" })); toRet.Signature = BlCommon.GetSignature(toRet.Permission.UserId, toRet.Permission.EntryDate); toRet.ActionMode = Enumerations.ActionMode.Edit; } return(toRet); }
public PermissionVm Save(long userId, PermissionVm toSave) { var permission = toSave.Permission; PreSave(userId, ref permission, toSave.ActionMode, toSave.RolesTree); toSave.Permission = permission; switch (toSave.ActionMode) { case Enumerations.ActionMode.Add: toSave.Permission = Create(userId, toSave.Permission); break; case Enumerations.ActionMode.Edit: toSave.Permission = Edit(userId, toSave.Permission); break; } return(Init(userId, toSave.Permission.Id)); }