using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Xml;
using XCoreBLL.Resource;
using XImagingXhandler.XDAL;
namespace XCore
{
public class CoatingReportBll
{
///
/// 生成涂布报告方法的xml节点属性对象
///
/// 涂布报告方法的xml节点
/// 涂布报告方法的xml节点属性对象
public MethodCoatingReport GenerateMethodDataExport(XmlNode xmlNode)
{
MethodCoatingReport methodDataExport = new MethodCoatingReport();
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();
methodDataExport.reportColumns = GenerateReporColumnList(xmlNode);//根据节点构建移液表
methodDataExport.filePostfix = xmlNode.SelectSingleNode("filePostfix").InnerText;
methodDataExport.fileName = xmlNode.SelectSingleNode("fileName").InnerText;
return methodDataExport;
}
private List GenerateReporColumnList(XmlNode xmlNode)
{
List reportColumns = new List();
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 GenerateReportColumn()
{
List dropdownNames= new List();
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);
return dropdownNames;
}
string strCurrentCulture = "";
public CoatingReportBll()
{
strCurrentCulture = System.Threading.Thread.CurrentThread.CurrentCulture.Name;
}
#region 检查所有属性设置是否满足要求
///
/// 检查所有属性设置是否满足要求
///
/// 涂布报告属性对象
/// 检查所有属性设置是否满足要求
public MethodPropertyInfo CheckProperty(MethodCoatingReport methodCoatingReport)
{
MethodPropertyInfo methodPropertyInfo = new MethodPropertyInfo();
if (strCurrentCulture == "zh-CN")
{
methodPropertyInfo.property_tips_info = CoatingReportResourceCHS.tipsInfo.ToString();
if (methodCoatingReport.filePath == null || methodCoatingReport.filePath == "")
{
methodPropertyInfo.property_name_info = CoatingReportResourceCHS.filePath.ToString();
}
if (methodCoatingReport.reportColumns == null || methodCoatingReport.reportColumns.Count==0)
{
methodPropertyInfo.property_name_info = CoatingReportResourceCHS.reportColumns.ToString();
}
if (methodCoatingReport.filePostfix == null || methodCoatingReport.filePostfix == "")
{
methodPropertyInfo.property_name_info = CoatingReportResourceCHS.filePostfix.ToString();
}
if (methodCoatingReport.fileName == null || methodCoatingReport.fileName == "")
{
methodPropertyInfo.property_name_info = CoatingReportResourceCHS.fileName.ToString();
}
}
else if (strCurrentCulture == "en-US")
{
methodPropertyInfo.property_tips_info = CoatingReportResourceENU.tipsInfo.ToString();
if (methodCoatingReport.filePath == null || methodCoatingReport.filePath == "")
{
methodPropertyInfo.property_name_info = CoatingReportResourceENU.filePath.ToString();
}
if (methodCoatingReport.reportColumns == null || methodCoatingReport.reportColumns.Count == 0)
{
methodPropertyInfo.property_name_info = CoatingReportResourceENU.reportColumns.ToString();
}
if (methodCoatingReport.filePostfix == null || methodCoatingReport.filePostfix == "")
{
methodPropertyInfo.property_name_info = CoatingReportResourceENU.filePostfix.ToString();
}
if (methodCoatingReport.fileName == null || methodCoatingReport.fileName == "")
{
methodPropertyInfo.property_name_info = CoatingReportResourceENU.fileName.ToString();
}
}
return methodPropertyInfo;
}
#endregion
#region 生成涂布报告
public int GenerateCoatingReport(List reportColumns,List coatingReports)
{
try
{
}
catch
{
}
return 0;
}
#endregion
}
}