using System;
|
using System.Collections.Generic;
|
using System.Linq;
|
using System.Text;
|
using System.Threading.Tasks;
|
using System.Xml;
|
using XImagingXhandler.XDAL;
|
using System.Data;
|
namespace XCore
|
{
|
public class DataExportBll
|
{
|
/// <summary>
|
/// 生成涂布报告方法的xml节点属性对象
|
/// </summary>
|
/// <param name="xmlNodeAspirate">涂布报告方法的xml节点</param>
|
/// <returns>涂布报告方法的xml节点属性对象</returns>
|
public MethodDataExport GenerateMethodDataExport(XmlNode xmlNode)
|
{
|
MethodDataExport methodDataExport = new MethodDataExport();
|
methodDataExport.isrun = xmlNode.SelectSingleNode("isrun").InnerText;
|
methodDataExport.status = xmlNode.SelectSingleNode("status").InnerText;
|
methodDataExport.name = xmlNode.SelectSingleNode("name").InnerText;
|
methodDataExport.label = xmlNode.SelectSingleNode("label").InnerText;
|
methodDataExport.strIndex = xmlNode.SelectSingleNode("strIndex").InnerText;
|
methodDataExport.filePath = xmlNode.SelectSingleNode("filePath").InnerText;
|
methodDataExport.reportColumns = new List<ReportColumn>();
|
methodDataExport.reportColumns = GenerateReporColumnList(xmlNode);//根据节点构建移液表
|
methodDataExport.filePostfix = xmlNode.SelectSingleNode("filePostfix").InnerText;
|
methodDataExport.fileName = xmlNode.SelectSingleNode("fileName").InnerText;
|
return methodDataExport;
|
}
|
|
private List<ReportColumn> GenerateReporColumnList(XmlNode xmlNode)
|
{
|
List<ReportColumn> reportColumns = new List<ReportColumn>();
|
|
XmlNode xmlNode1 = xmlNode.SelectSingleNode("transferDataTable");
|
|
if (xmlNode1.ChildNodes[0] != null)
|
{
|
for (int j = 0; j < xmlNode1.ChildNodes[0].ChildNodes.Count; j++)
|
{
|
ReportColumn reportColumn = new ReportColumn();
|
reportColumn.reportcolumn_id = xmlNode1.ChildNodes[0].ChildNodes[j].InnerText;
|
reportColumn.reportcolumn_name = xmlNode1.ChildNodes[1].ChildNodes[j].InnerText;
|
reportColumn.reportcolumn_sname = xmlNode1.ChildNodes[2].ChildNodes[j].InnerText;
|
reportColumns.Add(reportColumn);
|
}
|
}
|
|
return reportColumns;
|
}
|
|
public List<DropdownName> GenerateReportColumn()
|
{
|
List<DropdownName> dropdownNames = new List<DropdownName>();
|
DropdownName dropdownName = new DropdownName();
|
dropdownName.dropdown_id = "0";
|
dropdownName.dropdown_name = "CoatingDataId";
|
dropdownNames.Add(dropdownName);
|
|
dropdownName = new DropdownName();
|
dropdownName.dropdown_id = "1";
|
dropdownName.dropdown_name = "SourcePlateID";
|
dropdownNames.Add(dropdownName);
|
|
dropdownName = new DropdownName();
|
dropdownName.dropdown_id = "2";
|
dropdownName.dropdown_name = "SourcePlateBarcode";
|
dropdownNames.Add(dropdownName);
|
|
dropdownName = new DropdownName();
|
dropdownName.dropdown_id = "3";
|
dropdownName.dropdown_name = "SourcePlateWell";
|
dropdownNames.Add(dropdownName);
|
|
dropdownName = new DropdownName();
|
dropdownName.dropdown_id = "4";
|
dropdownName.dropdown_name = "TargetPlateID";
|
dropdownNames.Add(dropdownName);
|
|
dropdownName = new DropdownName();
|
dropdownName.dropdown_id = "5";
|
dropdownName.dropdown_name = "TargetPlateBarcode";
|
dropdownNames.Add(dropdownName);
|
|
dropdownName = new DropdownName();
|
dropdownName.dropdown_id = "6";
|
dropdownName.dropdown_name = "TargetPlateWell";
|
dropdownNames.Add(dropdownName);
|
|
|
dropdownName = new DropdownName();
|
dropdownName.dropdown_id = "7";
|
dropdownName.dropdown_name = "Volume";
|
dropdownNames.Add(dropdownName);
|
|
dropdownName = new DropdownName();
|
dropdownName.dropdown_id = "8";
|
dropdownName.dropdown_name = "StartActionTime";
|
dropdownNames.Add(dropdownName);
|
|
dropdownName = new DropdownName();
|
dropdownName.dropdown_id = "9";
|
dropdownName.dropdown_name = "EndActionTime";
|
dropdownNames.Add(dropdownName);
|
|
dropdownName = new DropdownName();
|
dropdownName.dropdown_id = "10";
|
dropdownName.dropdown_name = "ExcuteResult";
|
dropdownNames.Add(dropdownName);
|
|
dropdownName = new DropdownName();
|
dropdownName.dropdown_id = "11";
|
dropdownName.dropdown_name = "StepIndex";
|
dropdownNames.Add(dropdownName);
|
|
return dropdownNames;
|
|
}
|
|
#region 构建数据表结构
|
public DataTable GenerateDataPortStructure()
|
{
|
DataTable dataTable=new DataTable();
|
List<DropdownName> dropdownNames = this.GenerateReportColumn();
|
foreach (DropdownName r in dropdownNames)
|
{
|
DataColumn d = new DataColumn();
|
d.ColumnName = r.dropdown_name;
|
dataTable.Columns.Add(d);
|
}
|
return dataTable;
|
}
|
#endregion
|
}
|
}
|