public async Task <ApiResult> ModifyAsync(MenuModifyInput menuModifyInput) { var menuModel = await GetModelAsync(d => d.NameCode.Equals(menuModifyInput.NameCode) && d.Id != menuModifyInput.Id); if (menuModel?.Id > 0) { throw new FriendlyException("已经存在该权限码了"); } string parentIdList = ""; int layer = 0; if (menuModifyInput.ParentId > 0) { // 说明有父级 根据父级,查询对应的模型 var model = await GetModelAsync(d => d.Id == menuModifyInput.ParentId); if (model.Id > 0) { parentIdList = model.ParentIdList + menuModifyInput.Id + ","; layer = model.Layer + 1; } } else { parentIdList = "," + menuModifyInput.Id + ","; layer = 1; } await UpdateAsync(d => new Menu() { Name = menuModifyInput.Name, Url = menuModifyInput.Url, ModifyTime = menuModifyInput.ModifyTime, HttpMethod = menuModifyInput.HttpMethod, Status = menuModifyInput.Status, ParentId = menuModifyInput.ParentId, Icon = menuModifyInput.Icon, Sort = menuModifyInput.Sort, BtnCodeIds = menuModifyInput.BtnCodeIds, Layer = layer, ParentIdList = parentIdList }, d => d.Id == menuModifyInput.Id); return(new ApiResult()); }
public async Task <ApiResult> Modify([FromBody] MenuModifyInput menuModifyInput) { return(await _menuService.ModifyAsync(menuModifyInput)); }