public Task<StatusData<string>> UpsertSetting(UserSettingRequest request, SystemSession session)
 {
     return _jUnitOfWork.Setting.UpsertSetting(request, (int)SystemDbStatus.Flushed, session);
 }
        public async Task<StatusData<string>> UpsertSetting(UserSettingRequest request, int mode, SystemSession session)
        {
            List<string> distinctEntries = null;
            if (request.Entries != null)
                distinctEntries = request.Entries.Distinct().ToList().ConvertAll(Convert.ToString);
            var serviceRequest = new SettingPerson
            {
                UserId = session.UserId.ToString(),
                SettingTypePerson = new SettingTypePerson
                {
                    SettingTypeId = (byte)request.SettingTypeId,
                    SettingGroup = request.SettingGroupId
                },
                SettingValue = request.Value,
                Entries = distinctEntries,
                Mode = mode
            };

            var response = (await Task.Factory.StartNew(() => Client.SettingService.updateSetting(serviceRequest, session.GetSession())).ConfigureAwait(false)).GetStatusData<string>();
            return response;
        }