#region
|
|
using System;
|
using System.Data;
|
using CSFrameworkV5.Business;
|
using CSFrameworkV5.Common;
|
using CSFrameworkV5.Core;
|
using CSFrameworkV5.Language;
|
using CSFrameworkV5.Library;
|
using CSFrameworkV5.Library.CommonClass;
|
|
#endregion
|
|
namespace CSFrameworkV5.SystemModule
|
{
|
/// <summary>
|
/// Language的资料管理窗体,由代码生成器(Code Generator)自动生成
|
/// </summary>
|
public partial class frmLanguage : frmBaseDataDictionary
|
{
|
private bllLanguage _BLLInstance;
|
|
public frmLanguage()
|
{
|
InitializeComponent();
|
}
|
|
private void btnBaiDuApi_Click(object sender, EventArgs e)
|
{
|
if (gvSummary.RowCount > 0)
|
{
|
if (Msg.AskQuestion($"共{gvSummary.RowCount}条记录,确定要翻译吗?") ==
|
false) return;
|
|
var count = 0;
|
var failed = 0;
|
try
|
{
|
frmWaitingEx.ShowMe(this);
|
|
//选择语言界面
|
var lan = frmBaiduTrans.Execute();
|
if (string.IsNullOrWhiteSpace(lan)) return; //没选择语言,或取消操作
|
|
//对应sys_Language的语言字段
|
var field = "ENG";
|
if (lan == "cht") field = "CHT"; //繁体
|
|
if (lan == "en") field = "ENG"; //英文
|
|
if (lan == "vie") field = "VN"; //越南文
|
|
var tran = BaiduTrans.CreateDefault();
|
|
var dt = gcSummary.DataSource as DataTable;
|
foreach (DataRow r in dt.Rows)
|
{
|
r[field] = tran.Tran(r["CHS"].ToStringEx(), "zh", lan);
|
if (DoSaveRow(r))
|
count++;
|
else
|
failed++;
|
}
|
}
|
finally
|
{
|
frmWaitingEx.HideMe(this);
|
}
|
|
Msg.ShowInformation($"翻译完成!成功{count},失败{failed}条记录!");
|
}
|
else
|
{
|
Msg.Warning("表格没记录!");
|
}
|
}
|
|
private void btnEmpty_Click(object sender, EventArgs e)
|
{
|
ClearContainerEditorText(pnlSearch);
|
}
|
|
private void btnQuery_Click(object sender, EventArgs e)
|
{
|
//搜索数据
|
try
|
{
|
frmWaitingEx.ShowMe(this);
|
|
var type = txt_LanType.EditValue.ToStringEx();
|
if (type == "All") type = "";
|
|
var dt = _BLLInstance.Query(
|
ConvertEx.ToString(txt_ObjectID.EditValue),
|
ConvertEx.ToString(txt_CHS.EditValue),
|
ConvertEx.ToString(txt_CHT.EditValue),
|
ConvertEx.ToString(txt_ENG.EditValue), type);
|
DoBindingSummaryGrid(dt); //绑定主表的Grid
|
ShowSummaryPage(true); //显示Summary页面.
|
}
|
finally
|
{
|
frmWaitingEx.HideMe(this);
|
}
|
|
if (gvSummary.RowCount == 0) Msg.Warning("没有找到数据!");
|
}
|
|
private void btnRefreshLan_Click(object sender, EventArgs e)
|
{
|
try
|
{
|
frmWaitingEx.ShowMe(this);
|
LanLib.LanguageData.Load();
|
Msg.ShowInformation("更新缓存数据成功!");
|
}
|
finally
|
{
|
frmWaitingEx.HideMe(this);
|
}
|
}
|
|
protected override void
|
ButtonStateChanged(UpdateType currentState) //按钮状态改变时触发的事件
|
{
|
base.ButtonStateChanged(currentState);
|
|
if (currentState == UpdateType.Modify)
|
{
|
txtObjectID.Enabled = false; //修改状态下不允许修改主键的数据
|
txtObjectID.Properties.ReadOnly = true; //修改状态下不允许修改主键的数据
|
}
|
|
if (currentState == UpdateType.Add) txtObjectID.Enabled = true;
|
|
txtCreateTime.Properties.ReadOnly = true;
|
}
|
|
protected override void DoAfterSave(DataTable dataTable)
|
{
|
base.DoAfterSave(dataTable);
|
|
//修改了数据,重新加载语言包
|
//LanLib.LanguageData.Load();
|
}
|
|
/// <summary>
|
/// 绑定修改页面中所有输入框的数据源
|
/// </summary>
|
/// <param name="summary">数据源</param>
|
protected override void DoBindingSummaryEditor(DataTable summary)
|
{
|
DoBindingEditorPanel(pcDetailEditor, summary);
|
//在此可绑定其它自定义的输入框,参考frmCustomer的DoBindingSummaryEditor方法
|
}
|
|
public override void DoSave(IButtonInfo sender)
|
{
|
base.DoSave(sender);
|
}
|
|
private bool DoSaveRow(DataRow row)
|
{
|
try
|
{
|
var dtSave = row.Table.GetChanges();
|
if (dtSave != null)
|
if (_BLLInstance.Update(dtSave))
|
{
|
row.Table.AcceptChanges();
|
return true;
|
}
|
|
return false;
|
}
|
catch
|
{
|
row.Table.RejectChanges();
|
return false;
|
}
|
}
|
|
private void frmLanguage_Load(object sender, EventArgs e)
|
{
|
InitializeForm(); //自定义初始化操作
|
SetLanguage();
|
}
|
|
protected override void InitializeForm()
|
{
|
_SummaryView =
|
new DevGridView(
|
gvSummary); //实例化数据主视图,此接口可支持不同的主视图,比如Grid,TreeList.
|
//_ActiveEditor = txtObjectID;//进入修改状态,显示第一个焦点的输入框,可以不设置
|
//_KeyEditor = txtObjectID;//主键字段输入框,可以不设置
|
_DetailGroupControl = pcDetailEditor; //修改页面所有输入框的容器
|
_BLL = new bllLanguage(); //实例化基类业务逻辑层
|
_BLLInstance = _BLL as bllLanguage; //本窗体的业务层对象引用
|
base.InitializeForm();
|
|
#region 以下代码全自动生成,请调整排版和顺序
|
|
#endregion
|
}
|
|
protected override void ShowSummary()
|
{
|
//重写此方法打开窗体时不显示任何数据
|
}
|
|
#region 自动生成的事件或方法的主体部份
|
|
#endregion
|
}
|
}
|