using System; using System.Windows; using System.Windows.Controls; using System.Data; using SSWMS.Common; namespace SSWMS.Client { /// /// 导入类型 /// public enum ImportType { Excel, Xml } /// /// ImportWindow.xaml 的交互逻辑 /// public partial class ImportExcelDialog : Window { ImportType emImportType = ImportType.Excel; bool _IsCommit = true; //是否提交保存 string _tableConverterCode = null; DataSet dsImport = null; public DataTable dt = null; /// /// 导入文件类型 /// public ImportType U_ImportType { set { emImportType = value; } } /// /// 导入的数据集集合 /// public DataSet U_ImportDataSet { get { return dsImport; } set { dsImport = value; } } #region ------构造函数 /// /// 构造函数 /// public ImportExcelDialog(bool IsCommit) { InitializeComponent(); this._IsCommit = IsCommit; } /// /// 构造函数 /// public ImportExcelDialog(bool IsCommit,string TableConverterCode):this(IsCommit) { this._tableConverterCode = TableConverterCode; this.cmbTemplateName.IsEnabled = false; } #endregion /// /// 加载窗体 /// private void Window_Loaded(object sender, RoutedEventArgs e) { //加载所有模板 //this.LoadTemplate(); } /// /// 按钮事件 /// private void WrapPanel_Click(object sender, RoutedEventArgs e) { Button btn = e.OriginalSource as Button; if (btn != null) { switch (btn.Name) { case "btnOpen": this.OpenFile(); break; case "btnImport": this.ImportFile(); break; case "btnClose": this.Close(); break; } } } /// /// 选择导入文件 /// private void OpenFile() { System.Windows.Forms.OpenFileDialog opDig = new System.Windows.Forms.OpenFileDialog(); //判断导入文件类型 switch (emImportType) { case ImportType.Excel: break; case ImportType.Xml: this.ImportXml(); break; } if (opDig.ShowDialog() == System.Windows.Forms.DialogResult.OK) { this.txtFileName.Text = opDig.FileName; } } /// /// 导入文件 /// private void ImportFile() { if (string.IsNullOrEmpty(this.txtFileName.Text) ) { MessageDialog.ShowException(string.Format("请检查{0}输入值是否为空值", string.Format("[{0}/{1}]", this.lblTemplateName.Text, this.lblFileName.Text))); return; } //判断导入文件类型 switch (emImportType) { case ImportType.Excel: this.ImportGoodsExcel(); break; case ImportType.Xml: this.ImportXml(); break; } } private void ImportGoodsExcel() { try { //获得Excel数据源 //dt = new SSWMS.Common.Excel().ImportToDataTable(this.txtFileName.Text, true); //if (dt.Rows.Count > 0) // { // dt.TableName = "ExcelImport"; // this.DialogResult = true; // } } catch (Exception ex) { MessageDialog.ShowException(ex); } } /// /// 导入XML文件 /// private void ImportXml() { if (this.dsImport != null) { this.dsImport.ReadXml(this.txtFileName.Text); //判断是否提交保存 if (this._IsCommit) { try { string sResult = string.Empty; int intAffect = WCFChannel._I_BaseService.UpdateDataTable(dsImport.Tables[0], dsImport.Tables[0].TableName, out sResult); MessageDialog.ShowResult(intAffect > 0, sResult); } catch (Exception ex) { MessageDialog.ShowException(ex); } return; } this.DialogResult = true; return; } } } }