Commit 2649e6db by wyc

修改菜单时,若操作的是最后一个子集或者第一个子集,则同时更新其父级的状态

parent 650120dd
{
"profiles": {
"Performance.ConsoleApp": {
"commandName": "Project"
},
"WSL": {
"commandName": "WSL2",
"distributionName": ""
}
}
}
\ No newline at end of file
...@@ -78,7 +78,17 @@ public ApiResponse UpdateSystemMenu(MenuRequest menuRequest) ...@@ -78,7 +78,17 @@ public ApiResponse UpdateSystemMenu(MenuRequest menuRequest)
{ {
try try
{ {
var data = _menuRepository.GetEntity(w => w.ID == menuRequest.ID); List<sys_menu> sys_Menus = new List<sys_menu>();
var datas = _menuRepository.GetEntities(w => w.ID == menuRequest.ParentID || w.ParentID == menuRequest.ParentID);
if (datas == null)
throw new PerformanceException("未找到需要修改的数据,请检查后重试");
if (datas.Where(w => w.ParentID == menuRequest.ParentID && w.States == 1).Count() <= 1)
{
var temp = datas.FirstOrDefault(w => w.ID == menuRequest.ParentID);
temp.States = menuRequest.States;
sys_Menus.Add(temp);
}
var data = datas.FirstOrDefault(w => w.ID == menuRequest.ID);
if (data == null) if (data == null)
throw new PerformanceException("未找到需要修改的数据"); throw new PerformanceException("未找到需要修改的数据");
data.ParentID = menuRequest.ParentID; data.ParentID = menuRequest.ParentID;
...@@ -86,7 +96,10 @@ public ApiResponse UpdateSystemMenu(MenuRequest menuRequest) ...@@ -86,7 +96,10 @@ public ApiResponse UpdateSystemMenu(MenuRequest menuRequest)
data.MenuUrl = menuRequest.MenuUrl; data.MenuUrl = menuRequest.MenuUrl;
data.States = menuRequest.States; data.States = menuRequest.States;
data.Sort = menuRequest.Sort; data.Sort = menuRequest.Sort;
_menuRepository.Update(data); sys_Menus.Add(data);
if (sys_Menus == null)
throw new PerformanceException("未找到需要修改的数据,请检查后重试");
_menuRepository.UpdateRange(sys_Menus.ToArray());
return new ApiResponse(ResponseType.OK); return new ApiResponse(ResponseType.OK);
} }
catch (Exception ex) catch (Exception ex)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment