/// <summary> /// 获取绑定列表 /// </summary> /// <param name="whereParam"></param> private void GetBinderList(WhereParam whereParam, ModuleQueryDTO m, IList <ModuleQueryDTO> mList, string userId) { switch (m.ControlType) { case (int)QueryConfig.ControlType.ComboTreeBox: whereParam.BinderList = corporationService.FindTreeList(); whereParam.AllBinderList = new List <string>(); break; case (int)QueryConfig.ControlType.ComboMultipleBox: case (int)QueryConfig.ControlType.ComboRadioBox: if (!string.IsNullOrEmpty(m.RelationId_1) || !string.IsNullOrEmpty(m.RelationId_2)) { whereParam.AllBinderList = this.GetComboList(m.DropdownDataSource, m.DownListValue, userId); whereParam.BinderList = this.GetCurrentBinder(mList, m, whereParam); } else { whereParam.BinderList = this.GetComboList(m.DropdownDataSource, m.DownListValue, userId); whereParam.AllBinderList = new List <string>(); } break; default: whereParam.BinderList = new List <string>(); whereParam.AllBinderList = new List <string>(); break; } }
/// <summary> /// 获取默认值 /// </summary> /// <param name="whereParam"></param> /// <param name="m"></param> private void GetDefaultValue(WhereParam whereParam, ModuleQueryDTO m) { if (m.DataType == (int)QueryConfig.DataType.DateTime) { var dValue = 0; Int32.TryParse(m.DefaultValue, out dValue); whereParam.Value = this.GetDefaultValue((QueryConfig.DateDefalutValueType)dValue); } else { whereParam.Value = m.DefaultValue; } }
/// <summary> /// 获取下拉列表当前绑定数据 /// 如果关联字段有默认值则重新获取绑定值 /// </summary> /// <param name="mList"></param> /// <param name="m"></param> /// <param name="whereParam"></param> /// <returns></returns> private object GetCurrentBinder(IList <ModuleQueryDTO> mList, ModuleQueryDTO m, WhereParam whereParam) { var returnList = new List <SelectDTO>(); if (!string.IsNullOrEmpty(m.RelationId_1) && string.IsNullOrEmpty(m.RelationId_2)) { var mqModel = mList.Where(g => g.ParamName == m.RelationId_1).FirstOrDefault(); if (mqModel != null && !string.IsNullOrEmpty(mqModel.DefaultValue)) { returnList = ((List <SelectDTO>)whereParam.AllBinderList).Where(g => g.RelationId_1 == mqModel.DefaultValue).ToList(); } } else if (!string.IsNullOrEmpty(m.RelationId_1) && !string.IsNullOrEmpty(m.RelationId_2)) { var mqModel1 = mList.Where(g => g.ParamName == m.RelationId_1).FirstOrDefault(); var mqModel2 = mList.Where(g => g.ParamName == m.RelationId_2).FirstOrDefault(); if (mqModel1 != null && !string.IsNullOrEmpty(mqModel1.DefaultValue) && mqModel2 != null && !string.IsNullOrEmpty(mqModel2.DefaultValue)) { returnList = ((List <SelectDTO>)whereParam.AllBinderList).Where(g => g.RelationId_1 == mqModel1.DefaultValue && g.RelationId_2 == mqModel2.DefaultValue).ToList(); } } return(returnList); }