public async Task CreateOrUpdateMileStoneStatus(CreateMileStoneStatusInput input) { if (input.Id != 0) { await UpdateMileStoneStatus(input); } else { await CreateMileStoneStatus(input); } }
public virtual async Task UpdateMileStoneStatus(CreateMileStoneStatusInput input) { input.TenantId = (int)(AbpSession.TenantId); using (_unitOfWorkManager.Current.SetTenantId(AbpSession.TenantId)) { var status = input.MapTo <MileStoneStatus>(); var val = _mileStoneStatusRepository .GetAll().Where(p => (p.Code == input.Code || p.Name == input.Name) && p.Id != input.Id).FirstOrDefault(); if (val == null) { await _mileStoneStatusRepository.UpdateAsync(status); } else { throw new UserFriendlyException("Ooops!", "Duplicate Data Occured in MileStoneStatus Name '" + input.Name + "' or MileStoneStatus Code '" + input.Code + "'..."); } } }