protected override IDictionary <string, object> GetSearchSpInParams(Entity.Filter.BaseFilter baseFilter) { QueryEnumerationFilter filter = baseFilter as QueryEnumerationFilter; if (null != filter) { IDictionary <string, object> dicParameter = new Dictionary <string, object>(); dicParameter.Add("@FullKey", filter.FullKey); dicParameter.Add("@EnumID", filter.EnumID); dicParameter.Add("@GetEnumType", filter.GetEnumType); return(dicParameter); } return(null); }
/// <summary> /// 查询枚举 /// </summary> /// <param name="filter"></param> /// <param name="responseEntity"></param> public void QueryEnumeration(BaseFilter baseFilter, ResponseEntity responseEntity) { QueryEnumerationFilter filter = baseFilter as QueryEnumerationFilter; if (null == filter) { responseEntity.ResponseStatus = (int)EnumResponseState.RequestCommandError; responseEntity.ResponseMessage = "获取枚举失败,入参校验错误"; return; } if (string.IsNullOrEmpty(filter.FullKey)) { if (string.IsNullOrEmpty(filter.EnumID)) { responseEntity.ResponseStatus = (int)EnumResponseState.RequestCommandError; responseEntity.ResponseMessage = "获取枚举失败,FullKey和ID均无值"; return; } } else { //传入FullKey的话,优先使用FullKey作为查询条件 filter.EnumID = string.Empty; // 获取所有的下拉框列表数据 var lstEnumRedisDataEntity = Singleton <RedisEnumOperatorBLL> .Instance.GetEnumRedisDataEntitys <EnumRedisDataEntity>(); var list = new List <EnumerationViewData>(); string[] keys = filter.FullKey.Split( WebServiceConst.Separater_Comma.ToArray(), StringSplitOptions.RemoveEmptyEntries); foreach (var key in keys) { if (key == SysConst.TEAM) { list.AddRange(GetTeamEnumerationViewData(key).ToArray()); } else if (key == SysConst.REGION_STORE) { list.AddRange(GetRegionStoreEnumerationViewData(key).ToArray()); } else if (key == SysConst.REGION) { list.AddRange(GetRegionEnumerationViewData(key).ToArray()); } else if (key == SysConst.STORE) { list.AddRange(GetStoreEnumerationViewData(key).ToArray()); } else { list.AddRange(GetEnumerationViewData(key, lstEnumRedisDataEntity).ToArray()); } } if (null != list && list.Count > 0) { var responseResult = new ResponseListResult <EnumerationViewData>(); responseResult.TotalCount = list.Count; responseResult.LstResult = list; responseEntity.Results = responseResult; responseEntity.ResponseStatus = (int)EnumResponseState.Success; responseEntity.ResponseMessage = "处理成功"; } else { ServiceUtility.SetResponseStatus(responseEntity, EnumResponseState.NoResult); m_Logger.Info("未查询到数据!。"); return; } } }