/// <summary> /// 保存授权客户 /// </summary> /// <param name="model"></param> /// <returns></returns> public async Task <bool> SaveSysApiClient(SysApiClientInput model) { var isRepeat = _sysApiClientRepository.GetAllList(w => w.ClientId == model.ClientId && w.Id != model.Id).Any(); if (isRepeat) { throw new UserFriendlyException("授权客户重复", "您设置的授权客户" + model.ClientId + "重复!"); } Guid id; if (model.Id == null) { SysApiClient modelInput = ObjectMapper.Map <SysApiClient>(model); id = await _sysApiClientRepository.InsertAndGetIdAsync(modelInput); } else { SysApiClient data = _sysApiClientRepository.Get(model.Id.Value); SysApiClient m = ObjectMapper.Map(model, data); await _sysApiClientRepository.UpdateAsync(m); id = m.Id; } //保存客户与资源关系 _sysApiResourceToClientRepository.Delete(w => w.ApiClientId == id); if (!string.IsNullOrEmpty(model.ApiResourceId)) { _sysApiResourceToClientRepository.Insert(new SysApiResourceToClient() { ApiClientId = id, ApiResourceId = Guid.Parse(model.ApiResourceId) }); } //移除缓存 _sysIdentityServerCacheAppService.RemoveClientAndAccountCache(); _sysIdentityServerCacheAppService.RemoveClientCache(); return(true); }
public async Task <JsonResult> SaveSysApiClient([FromBody] SysApiClientInput model) { var flag = await _sysApiClientAppService.SaveSysApiClient(model); return(Json(flag)); }