public void SetMultiLanguageBizEntity(MultiLanguageBizEntity entity) { CustomDataCommand cmd = DataCommandManager.CreateCustomDataCommandFromConfig("SetMultiLanguageTemplate"); string tableName = entity.MappingTable; string pkcriteria = string.Format(" SysNo={0} AND LanguageCode='{1}'", entity.SysNo, entity.LanguageCode.Replace("'", "''")); string insertColumns = string.Empty; string insertValues = string.Empty; string updateColumns = string.Empty; insertColumns = " LanguageCode,SysNo,"; insertValues = " @LanguageCode,@SysNo,"; cmd.AddInputParameter("@LanguageCode", System.Data.DbType.AnsiStringFixedLength); cmd.SetParameterValue("@LanguageCode", entity.LanguageCode); cmd.AddInputParameter("@SysNo", System.Data.DbType.AnsiStringFixedLength); cmd.SetParameterValue("@SysNo", entity.SysNo); foreach (PropertyItem propItem in entity.PropertyItemList) { insertColumns += " " + propItem.Field + ","; insertValues += " @" + propItem.Field + ","; updateColumns += string.Format(" {0}=@{0},", propItem.Field); cmd.AddInputParameter("@" + propItem.Field, System.Data.DbType.AnsiStringFixedLength); cmd.SetParameterValue("@" + propItem.Field, propItem.Value); } insertColumns = insertColumns.TrimEnd(','); insertValues = insertValues.TrimEnd(','); updateColumns = updateColumns.TrimEnd(','); cmd.CommandText = cmd.CommandText.Replace("#tableName", tableName).Replace("#pkcriteria", pkcriteria).Replace("#insertColumns", insertColumns).Replace("#insertValues", insertValues).Replace("#updateColumns", updateColumns); cmd.ExecuteNonQuery(); }
public void SetMultiLanguageBizEntity(MultiLanguageBizEntity entity) { if (entity == null) { throw new BizException("请输入有效的业务对象!"); } if (string.IsNullOrWhiteSpace(entity.LanguageCode) || string.IsNullOrWhiteSpace(entity.MappingTable) || entity.SysNo == 0 || string.IsNullOrWhiteSpace(entity.BizEntityType)) { throw new BizException("业务对象的语言编码,系统编号,业务类型,映射表名不能为空!"); } if (entity.PropertyItemList == null || entity.PropertyItemList.Count == 0) { throw new BizException(string.Format("请为{0}配置正确的属性!", entity.BizEntityType)); } m_DataAccess.SetMultiLanguageBizEntity(entity); }
public List <MultiLanguageBizEntity> GetMultiLanguageBizEntityList(MultiLanguageBizEntity entity) { CustomDataCommand cmd = DataCommandManager.CreateCustomDataCommandFromConfig("GetMultiLanguageTemplate"); string columns = "SysNo,LanguageCode"; string tableName = entity.MappingTable; string pkcriteria = string.Format(" SysNo={0}", entity.SysNo); foreach (PropertyItem propItem in entity.PropertyItemList) { columns += string.Format(",{0}", propItem.Field.Trim()); } cmd.CommandText = cmd.CommandText.Replace("#tableName", tableName).Replace("#pkcriteria", pkcriteria).Replace("#columns", columns); DataTable dt = cmd.ExecuteDataTable(); List <MultiLanguageBizEntity> list = new List <MultiLanguageBizEntity>(); if (dt == null || dt.Rows.Count == 0) { return(list); } foreach (DataRow row in dt.Rows) { MultiLanguageBizEntity rowEntity = new MultiLanguageBizEntity(); rowEntity.BizEntityType = entity.BizEntityType; rowEntity.LanguageCode = row["LanguageCode"].ToString().Trim(); rowEntity.SysNo = entity.SysNo; rowEntity.MappingTable = entity.MappingTable; rowEntity.PropertyItemList = new List <PropertyItem>(); foreach (PropertyItem propItem in entity.PropertyItemList) { PropertyItem newPropItem = new PropertyItem(); newPropItem.Field = propItem.Field; newPropItem.InputType = propItem.InputType; newPropItem.Label = propItem.Label; newPropItem.MaxLength = propItem.MaxLength; newPropItem.IsRequired = propItem.IsRequired; newPropItem.Value = row[propItem.Field] == null ? string.Empty : row[propItem.Field].ToString().Trim(); rowEntity.PropertyItemList.Add(newPropItem); } list.Add(rowEntity); } return(list); }
public List <MultiLanguageBizEntity> GetMultiLanguageBizEntityList(MultiLanguageDataContract dataContract) { if (dataContract == null || string.IsNullOrWhiteSpace(dataContract.BizEntityType) || dataContract.SysNo == 0) { throw new BizException("请输入有效的业务对象类型和系统编号!"); } List <MultiLanguageBizEntity> resourceList = MultiLanguageResourceManager.LoadResouce(); MultiLanguageBizEntity curEntityTemplate = resourceList.Find(f => f.BizEntityType.Trim().ToUpper() == dataContract.BizEntityType.Trim().ToUpper()); if (curEntityTemplate == null || curEntityTemplate.PropertyItemList == null || curEntityTemplate.PropertyItemList.Count == 0) { throw new BizException(string.Format("请为{0}配置正确的属性!", dataContract.BizEntityType)); } curEntityTemplate.BizEntityType = dataContract.BizEntityType.Trim(); curEntityTemplate.SysNo = dataContract.SysNo; List <MultiLanguageBizEntity> list = m_DataAccess.GetMultiLanguageBizEntityList(curEntityTemplate); List <Language> languageList = m_DataAccess.GetAllLanguageList(); languageList.RemoveAll(f => f.IsDefault == 1); List <MultiLanguageBizEntity> result = new List <MultiLanguageBizEntity>(); foreach (Language lang in languageList) { MultiLanguageBizEntity curEntity = list.Find(f => f.LanguageCode.Trim().ToUpper() == lang.LanguageCode.Trim().ToUpper()); if (curEntity == null) { MultiLanguageBizEntity entityRes = curEntityTemplate.DeepCopy(); entityRes.PropertyItemList.ForEach(item => item.Value = null); entityRes.LanguageCode = lang.LanguageCode; entityRes.LanguageName = lang.LanguageName; result.Add(entityRes); } else { curEntity.LanguageName = lang.LanguageName; result.Add(curEntity); } } return(result); }
/// <summary> /// 将自定义的语言控件转化成多语言实体类MultiLanguageBizEntity /// </summary> /// <returns></returns> private MultiLanguageBizEntity ConverLanguageExpanderToMultiLanguageBizEntity() { MultiLanguageBizEntity m = new MultiLanguageBizEntity(); m.PropertyItemList = new List <PropertyItem>(); m.SysNo = languageBizEntity.SysNo; m.BizEntityType = languageBizEntity.BizEntityType; m.MappingTable = languageBizEntity.MappingTable; m.LanguageCode = languageBizEntity.LanguageCode; for (int i = 0; i < rowCount; i++) { PropertyItem item = new PropertyItem(); item.Label = TbLabelsList[i].Text; item.Value = TxtValueList[i].Text; item.Field = TxtValueList[i].Tag.ToString().Trim(); item.InputType = TxtValueList[i].TextWrapping == TextWrapping.Wrap ? "M" : "S"; m.PropertyItemList.Add(item); } return(m); }
public LanguageExpander(MultiLanguageBizEntity entity, int index, MultiLanguageMaintainFacade _facade) { TbLabelsList = new List <TextBlock>(); TxtValueList = new List <TextBox>(); TextBlock tbLabel; TextBox txtValue; languageBizEntity = entity; this.facade = _facade; this.IsExpanded = true; this.Header = entity.LanguageName; Grid.SetRow(this, index); rootGrid = new Grid(); rootGrid.ColumnDefinitions.Add(new ColumnDefinition() { Width = GridLength.Auto }); rootGrid.ColumnDefinitions.Add(new ColumnDefinition() { Width = GridLength.Auto }); rootGrid.ColumnDefinitions.Add(new ColumnDefinition() { Width = new GridLength(560) }); rootGrid.Margin = new Thickness(20, 5, 20, 5); #region 根据属性创建TextBlock+TextBox for (int i = 0; i < entity.PropertyItemList.Count; i++) { rootGrid.RowDefinitions.Add(new RowDefinition() { Height = GridLength.Auto }); var item = entity.PropertyItemList[i]; if (item.InputType.Equals("S")) { txtValue = new TextBox() { Tag = item.Field, MaxLength = item.MaxLength }; } else { txtValue = new TextBox() { AcceptsReturn = true, VerticalScrollBarVisibility = ScrollBarVisibility.Visible, TextWrapping = TextWrapping.Wrap, Tag = item.Field, HorizontalAlignment = HorizontalAlignment.Stretch, MaxLength = item.MaxLength, Height = 80 }; } if (String.IsNullOrWhiteSpace(item.Value)) { txtValue.Text = String.Empty; } else { txtValue.Text = item.Value; } tbLabel = new TextBlock() { Text = item.Label, HorizontalAlignment = HorizontalAlignment.Right, Tag = item.IsRequired, Height = 20 }; if (item.IsRequired.Equals("Y")) { tbLabel.Text = "*" + tbLabel.Text; } Grid.SetRow(tbLabel, i); Grid.SetRow(txtValue, i); Grid.SetColumn(tbLabel, 0); Grid.SetColumn(txtValue, 2); rootGrid.Children.Add(tbLabel); TbLabelsList.Add(tbLabel); rootGrid.Children.Add(txtValue); TxtValueList.Add(txtValue); rowCount++; } #endregion #region 创建保存按钮 rootGrid.RowDefinitions.Add(new RowDefinition() { Height = GridLength.Auto }); Button saveButton = new Button(); saveButton.Click += new RoutedEventHandler(btnSave_Click); saveButton.HorizontalAlignment = HorizontalAlignment.Right; saveButton.VerticalAlignment = VerticalAlignment.Top; saveButton.Height = 20; saveButton.Width = 60; saveButton.Content = "保存"; Grid.SetRow(saveButton, rowCount); Grid.SetColumn(saveButton, 3); rootGrid.Children.Add(saveButton); #endregion this.Content = rootGrid; }
public virtual void SetMultiLanguageBizEntity(MultiLanguageBizEntity entity) { ObjectFactory <MultiLanguageAppService> .Instance.SetMultiLanguageBizEntity(entity); }
public void SetMultiLanguageBizEntity(MultiLanguageBizEntity entity, EventHandler <RestClientEventArgs <dynamic> > callback) { string relativeUrl = "/CommonService/MultiLanguage/SetMultiLanguageBizEntity"; restClient.Update(relativeUrl, entity, callback); }
/// <summary> /// 写入多语言 /// </summary> /// <returns></returns> public static void SetMultiLanguageBizEntity(MultiLanguageBizEntity entity) { ObjectFactory <ICommonBizInteract> .Instance.SetMultiLanguageBizEntity(entity); }
public void SetMultiLanguageBizEntity(MultiLanguageBizEntity entity) { ObjectFactory <MultiLanguageProcessor> .Instance.SetMultiLanguageBizEntity(entity); }