public IActionResult CreatePermission(CreatePermissionModel model) { PermissionItems permission = model.AsPermissionItems(); permission.Itemkey = Guid.NewGuid().ToString(); permission.DateCreated = DateTime.Now; permission.DateLastModified = DateTime.Now; int newActionValue = Request.GetInt("IsNewAction", -1); if (newActionValue == 0) { permission.IsNewAction = false; } else if (newActionValue == 1) { permission.IsNewAction = true; } PermissionItemsCreateStatus status = PermissionItemsCreateStatus.UnknownFailure; permissionItemsService.CreatePermissionItems(permission, out status); StatusMessageData statusMessageData = null; switch (status) { case PermissionItemsCreateStatus.GuidFailure: statusMessageData = new StatusMessageData(StatusMessageType.Error, "对不起,您输入的父级项不正确"); break; case PermissionItemsCreateStatus.UrlFailure: statusMessageData = new StatusMessageData(StatusMessageType.Error, "对不起,您输入的权限Url不正确"); break; case PermissionItemsCreateStatus.UnknownFailure: statusMessageData = new StatusMessageData(StatusMessageType.Error, "创建时,产生了一个未知错误"); break; default: break; } if (statusMessageData == null) { return(Json(new StatusMessageData(StatusMessageType.Success, "创建成功!"))); } else { return(Json(statusMessageData)); } }
public PermissionItems CreatePermissionItems(PermissionItems entity, out PermissionItemsCreateStatus status) { //配置信息取出是否是使用36位的Guid作为主键 bool IsGuidIdentity = false; status = PermissionItemsCreateStatus.Created; if (entity == null) { status = PermissionItemsCreateStatus.UnknownFailure; return(null); } if (string.IsNullOrWhiteSpace(entity.Itemkey) || string.IsNullOrWhiteSpace(entity.Parentsid)) { status = PermissionItemsCreateStatus.GuidFailure; return(null); } if (!entity.Parentsid.Equals("0")) { var newGuid1 = entity.Parentsid.Substring(0, 8) + "-"; var newGuid2 = entity.Parentsid.Substring(8 - 1, 4) + "-"; var newGuid3 = entity.Parentsid.Substring(12 - 1, 4) + "-"; var newGuid4 = entity.Parentsid.Substring(16 - 1, 4) + "-"; var newGuid5 = entity.Parentsid.Substring(20 - 1, 12); var newGuid = $"{newGuid1}{newGuid2}{newGuid3}{newGuid4}{newGuid5}"; if (!Guid.TryParse(newGuid, out var resultGuid)) { status = PermissionItemsCreateStatus.GuidFailure; return(null); } } if (!IsGuidIdentity && entity.Itemkey.Length > 32) { entity.Itemkey = entity.Itemkey.Replace("-", ""); } if (permissionItemsRepository.AddPermissionItems(entity, false)) { return(entity); } else { return(null); } }
/// <summary> /// 编辑权限项 /// </summary> /// <param name="item"></param> /// <param name="status"></param> /// <returns></returns> public bool EditPermissionItems(PermissionItems entity, out PermissionItemsCreateStatus status) { status = PermissionItemsCreateStatus.Updated; if (entity == null) { status = PermissionItemsCreateStatus.UnknownFailure; return(false); } if (string.IsNullOrWhiteSpace(entity.Itemkey) || string.IsNullOrWhiteSpace(entity.Parentsid)) { status = PermissionItemsCreateStatus.GuidFailure; return(false); } if (string.IsNullOrWhiteSpace(entity.ItemUrl)) { status = PermissionItemsCreateStatus.GuidFailure; return(false); } if (!entity.Parentsid.Equals("0")) { var newGuid1 = entity.Parentsid.Substring(0, 8) + "-"; var newGuid2 = entity.Parentsid.Substring(8 - 1, 4) + "-"; var newGuid3 = entity.Parentsid.Substring(12 - 1, 4) + "-"; var newGuid4 = entity.Parentsid.Substring(16 - 1, 4) + "-"; var newGuid5 = entity.Parentsid.Substring(20 - 1, 12); var newGuid = $"{newGuid1}{newGuid2}{newGuid3}{newGuid4}{newGuid5}"; if (!Guid.TryParse(newGuid, out var resultGuid)) { status = PermissionItemsCreateStatus.GuidFailure; return(false); } } PermissionItems oldEntity = permissionItemsRepository.GetByCache(w => w.Itemkey == entity.Itemkey, entity.Itemkey); object result = permissionItemsRepository.UpdatePermissionItems(entity, oldEntity.Parentsid); return(bool.TryParse(result.ToString(), out var isBool)); }
public IActionResult EditPermission(EditPermissionModel model) { PermissionItems permission = model.AsPermissionItems(); permission.DateLastModified = DateTime.Now; PermissionItemsCreateStatus status = PermissionItemsCreateStatus.UnknownFailure; permissionItemsService.EditPermissionItems(permission, out status); StatusMessageData statusMessageData = null; switch (status) { case PermissionItemsCreateStatus.GuidFailure: statusMessageData = new StatusMessageData(StatusMessageType.Error, "对不起,您输入的父级项不正确"); break; case PermissionItemsCreateStatus.UrlFailure: statusMessageData = new StatusMessageData(StatusMessageType.Error, "对不起,您输入的权限Url不正确"); break; case PermissionItemsCreateStatus.UnknownFailure: statusMessageData = new StatusMessageData(StatusMessageType.Error, "更新时,产生了一个未知错误"); break; default: break; } if (statusMessageData == null) { return(Json(new StatusMessageData(StatusMessageType.Success, "编辑成功!"))); } else { return(Json(statusMessageData)); } }