using DevExpress.XtraEditors;
using DevExpress.XtraSpreadsheet.Model;
using HStation.Vmo;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using Yw;
namespace HStation.WinFrmUI
{
public partial class ImportAssetsTankCurveQLByExcelDlg : DevExpress.XtraEditors.XtraForm
{
public ImportAssetsTankCurveQLByExcelDlg()
{
InitializeComponent();
this.IconOptions.Icon = Yw.WinFrmUI.GlobalParas.AppIcon;
this.layoutControl1.SetupLayoutControl();
this.generalOkAndCancelCtrl1.OkEvent += GeneralOkAndCancelCtrl1_OkEvent;
}
///
/// 重载事件
///
public event Action ReloadDataEvent;
private AssetsTankMainVmo _exchanger = null;//当前换热器
private PhartDiagramRelationVmo _vmo = null;//曲线关联
///
/// 绑定数据
///
public void SetBindingData(AssetsTankMainVmo exchanger)
{
if (exchanger == null)
{
return;
}
_exchanger = exchanger;
_vmo = new PhartDiagramRelationVmo();
_vmo.ObjectType = HStation.Assets.DataType.TankMain;
_vmo.ObjectID = exchanger.ID;
_vmo.Importance = 0;
this.txtImportance.EditValue = 0;
}
//验证
private bool Valid()
{
this.dxErrorProvider1.ClearErrors();
if (string.IsNullOrEmpty(this.btnEditExcel.Text.Trim()))
{
this.dxErrorProvider1.SetError(this.btnEditExcel, "必选项");
return false;
}
if (string.IsNullOrEmpty(this.txtName.Text.Trim()))
{
this.dxErrorProvider1.SetError(this.txtName, "必填项");
return false;
}
return true;
}
//确定
private async void GeneralOkAndCancelCtrl1_OkEvent()
{
if (!Valid())
{
return;
}
var diagram = this.universalChartExcelImportCtrl1.Get();
var diagramId = await BLLFactory.Instance.Insert(diagram);
if (diagramId < 1)
{
TipFormHelper.ShowError("图表信息保存失败!");
return;
}
_vmo.DiagramID = diagramId;
_vmo.OtherName = this.txtName.Text.Trim();
_vmo.Importance = int.Parse(this.txtImportance.EditValue.ToString());
_vmo.ID = await BLLFactory.Instance.Insert(_vmo);
if (_vmo.ID < 1)
{
TipFormHelper.ShowError("图表关联信息保存失败!");
return;
}
var vmo = await BLLFactory.Instance.GetByID(_vmo.ID);
this.ReloadDataEvent?.Invoke(vmo);
this.DialogResult = DialogResult.OK;
this.Close();
}
//导入Excel
private void btnEditExcel_ButtonClick(object sender, DevExpress.XtraEditors.Controls.ButtonPressedEventArgs e)
{
var dlg = new OpenFileDialog();
dlg.Title = "选择Excel文件";
dlg.Filter = "Excel文件|*.xls";
if (dlg.ShowDialog() == DialogResult.OK)
{
var fileName = dlg.FileName;
this.btnEditExcel.EditValue = fileName;
this.universalChartExcelImportCtrl1.SetBindingData(fileName, Yw.Ahart.eCurveType.QL);
}
}
//模板导出
private void btnTemplate_Click(object sender, EventArgs e)
{
var dlg = new SaveFileDialog();
dlg.Title = "模板导出路径";
dlg.Filter = "Excel文件|*.xls";
if (dlg.ShowDialog() == DialogResult.OK)
{
var fileName = dlg.FileName;
Yw.WinFrmUI.PhartExcelHelper.ExportUniversalTemplate(fileName, Yw.Ahart.eCurveType.QL);
TipFormHelper.ShowSucceed("导出成功!");
}
}
}
}