public IActionResult Delete([Required] String pId) { if (ModelState.IsValid) { PrincipalConfig principalConfig = _analysis.GetLoginUserConfig(HttpContext); if (!principalConfig.Power.SystemManager) { if (!_context.Principals.Any(p => p.PrincipalId == principalConfig.PrincipalId && p.PrincipalStatus == PrincipalStatus.Super)) { return(Json(new { isOk = false, message = "你并无系统管理操作权限" })); } } Principal principal = _context.Principals.Find(pId); if (principal != null) { _context.Remove(principal); _context.SaveChanges(); String path = Path.GetFullPath($@"{_hosting.ContentRootPath}/JsonConfig/{pId}.json"); if (System.IO.File.Exists(path)) { System.IO.File.Delete(path); } return(Json(new { isOk = true, message = "删除成功! " })); } else { return(Json(new { isOk = true, message = "管理员不存在或者已被删除! " })); } } else { return(Json(new { isOk = false, message = $"参数错误!输入了不合规范的参数。 " })); } }
/// <summary> /// 完成日志记录 /// </summary> /// <param name="moduleId"></param> /// <returns></returns> public IActionResult Delete([Required] int moduleId) { if (ModelState.IsValid) { if (!_analysis.GetLoginUserConfig(HttpContext).Power.SystemInfoManager) { return(Json(new { isOk = false, error = "你并无信息管理操作权限" })); } if (_context.Cources.Any(cor => cor.ModuleId == moduleId)) { return(Json(new { isOk = false, Error = "此模块下具有课程信息! 请先删除此模块下辖的所有课程后再来删除模块!" })); } if (_context.MultipleChoices.Any(mul => mul.ModuleId == moduleId)) { return(Json(new { isOk = false, Error = "此模块下具有多选题信息! 请先删除此模块下辖的所有多选题后再来删除模块!" })); } if (_context.MultipleChoices.Any(mul => mul.ModuleId == moduleId)) { return(Json(new { isOk = false, Error = "此模块下具有多选题信息! 请先删除此模块下辖的所有多选题后再来删除模块!" })); } if (_context.SingleChoices.Any(sig => sig.ModuleId == moduleId)) { return(Json(new { isOk = false, Error = "此模块下具有单选题信息! 请先删除此模块下辖的所有单选题后再来删除模块!" })); } if (_context.JudgeChoices.Any(jud => jud.ModuleId == moduleId)) { return(Json(new { isOk = false, Error = "此模块下具有判断题信息! 请先删除此模块下辖的所有判断题后再来删除模块!" })); } //判断是否具有学院属于它 if (!_context.InstituteToModules.Any(im => im.ModuleId == moduleId)) { Module module = _context.Modules.FirstOrDefault(m => m.ModuleId == moduleId); if (module != null) { /* 重写考试配置 */ SystemSetting setting = _config.LoadSystemSetting(); setting.ExamModuleSettings.Remove(moduleId); _config.ReWriteSystemSetting(setting); /* 重写开发配置*/ Dictionary <int, ExamOpenSetting> es = _config.LoadModuleExamOpenSetting(); es.Remove(module.ModuleId); _config.ReWriteModuleExamOpenSetting(es); _context.Remove(module); //删除这个模块 LogPricipalOperation log = _logger.GetDefaultLogPricipalOperation( PrincpalOperationCode.ModuleDelete, $"查询编码:{moduleId} ", $"删除模块:{module.Name}"); log.PrincpalOperationStatus = PrincpalOperationStatus.Success; _context.LogPricipalOperations.Add(log); _context.SaveChanges(); return(Json(new { isOk = true })); } else { return(Json(new { isOk = false, Error = "没有这个模块" })); } } else { return(Json(new { isOk = false, Error = "此模块下具有学院信息! 请先删除此模块下辖的所有学院后再来删除模块!" })); } } else { return(Json(new { isOk = false, error = "参数错误" })); } }