184 lines
7.6 KiB
C#
184 lines
7.6 KiB
C#
|
using MECF.Framework.Common.DataCenter;
|
|||
|
using MECF.Framework.UI.Core.TrayCoating;
|
|||
|
using System;
|
|||
|
using System.Collections.Generic;
|
|||
|
using System.Data;
|
|||
|
|
|||
|
namespace MECF.Framework.UI.Client.TrayThickness
|
|||
|
{
|
|||
|
/// <summary>
|
|||
|
/// TrayDataViewSqlHelp
|
|||
|
/// 1:查询整个Tray对象数据
|
|||
|
/// 2:插入或者更新整个Tray对象数据
|
|||
|
/// </summary>
|
|||
|
public class TrayDataViewSqlHelp
|
|||
|
{
|
|||
|
private string tray_number, tray_inner_number, ring_inner_number, ring_outer_number;
|
|||
|
/// <summary>
|
|||
|
/// 获取Truy对象整体的数据
|
|||
|
/// </summary>
|
|||
|
/// <param name="_trayID"></param>
|
|||
|
/// <returns></returns>
|
|||
|
public TrayCoatingThickness GetTrayCoatingThickness(string _trayID)
|
|||
|
{
|
|||
|
TrayCoatingThickness trayCoatingThickness = new TrayCoatingThickness();
|
|||
|
try
|
|||
|
{
|
|||
|
//根据TrayID获取对应内外编号
|
|||
|
string cmdID = $"select * from tray_thickness_data where wafer_guid = '{_trayID}'";
|
|||
|
DataTable DataTable = QueryDataClient.Instance.Service.QueryData(cmdID);
|
|||
|
if (DataTable != null && DataTable.Rows.Count > 0)
|
|||
|
{
|
|||
|
|
|||
|
|
|||
|
tray_number = DataTable.Rows[0]["tray_number"].ToString();
|
|||
|
tray_inner_number = DataTable.Rows[0]["tray_inner_number"].ToString();
|
|||
|
ring_inner_number = DataTable.Rows[0]["ring_inner_number"].ToString();
|
|||
|
ring_outer_number = DataTable.Rows[0]["ring_outer_number"].ToString();
|
|||
|
|
|||
|
trayCoatingThickness.Tray = GetCoatingData(tray_number, out _);
|
|||
|
trayCoatingThickness.TrayInner = GetCoatingData(tray_inner_number, out _);
|
|||
|
trayCoatingThickness.RingInner = GetCoatingData(ring_inner_number, out _);
|
|||
|
trayCoatingThickness.RingOuter = GetCoatingData(ring_outer_number, out _);
|
|||
|
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
return trayCoatingThickness;
|
|||
|
}
|
|||
|
catch (Exception)
|
|||
|
{
|
|||
|
|
|||
|
return trayCoatingThickness;
|
|||
|
}
|
|||
|
}
|
|||
|
/// <summary>
|
|||
|
/// 获取单个环的数据
|
|||
|
/// </summary>
|
|||
|
/// <param name="_trayID"></param>
|
|||
|
/// <param name="isGetOK"></param>
|
|||
|
/// <returns></returns>
|
|||
|
public CoatingData GetCoatingData(string _trayID, out bool isGetOK)
|
|||
|
{
|
|||
|
string cmd = $"select * from tray_thickness_main where tray_number = '{_trayID}'";
|
|||
|
DataTable DataTable = QueryDataClient.Instance.Service.QueryData(cmd);
|
|||
|
|
|||
|
if (DataTable != null && DataTable.Rows.Count > 0)
|
|||
|
{
|
|||
|
CoatingData coatingData = new CoatingData()
|
|||
|
{
|
|||
|
Number = DataTable.Rows[0]["tray_number"].ToString(),
|
|||
|
MAX = DataTable.Rows[0]["tray_max_thickness"].ToString(),
|
|||
|
PM_Model = DataTable.Rows[0]["pm_number"].ToString(),
|
|||
|
Current = DataTable.Rows[0]["tray_coating_thickness"].ToString()
|
|||
|
};
|
|||
|
isGetOK = true;
|
|||
|
return coatingData;
|
|||
|
|
|||
|
}
|
|||
|
isGetOK = false;
|
|||
|
return new CoatingData();
|
|||
|
}
|
|||
|
/// <summary>
|
|||
|
/// 保存用户输入的数据到数据库
|
|||
|
/// </summary>
|
|||
|
/// <param name="trayCoatingThickness"></param>
|
|||
|
/// <param name="trayID"></param>
|
|||
|
public void UpTrayNumberData(TrayCoatingThickness trayCoatingThickness, string trayID, List<CoatingData> coatingData)
|
|||
|
{
|
|||
|
List<string> cmdList = new List<string>();
|
|||
|
|
|||
|
string cmdID = $"select * from tray_thickness_data where wafer_guid = '{trayID}'";
|
|||
|
DataTable DataTable = QueryDataClient.Instance.Service.QueryData(cmdID);
|
|||
|
if (DataTable != null && DataTable.Rows.Count > 0)
|
|||
|
cmdList.Add(Cmd_update(trayCoatingThickness, trayID));
|
|||
|
else
|
|||
|
cmdList.Add(Cmd_data_insert(trayCoatingThickness, trayID));
|
|||
|
|
|||
|
foreach (var item in coatingData)
|
|||
|
{
|
|||
|
cmdID = $"select * from tray_thickness_main where tray_number = '{item.Number}'";
|
|||
|
DataTable = QueryDataClient.Instance.Service.QueryData(cmdID);
|
|||
|
if (DataTable != null && DataTable.Rows.Count > 0)
|
|||
|
cmdList.Add(Cmd_main_update(item));
|
|||
|
else
|
|||
|
cmdList.Add(Cmd_main_insert(item));
|
|||
|
|
|||
|
}
|
|||
|
QueryDataClient.Instance.Service.ExcuteTransAction(cmdList);
|
|||
|
}
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// Tray中对象编号插入Sql语句拼接
|
|||
|
/// </summary>
|
|||
|
/// <param name="trayCoatingThickness"></param>
|
|||
|
/// <param name="trayID"></param>
|
|||
|
/// <returns></returns>
|
|||
|
private string Cmd_data_insert(TrayCoatingThickness trayCoatingThickness, string trayID)
|
|||
|
{
|
|||
|
string cmd_data_insert =
|
|||
|
"insert into tray_thickness_data" +
|
|||
|
"(wafer_guid,tray_number, tray_inner_number, ring_inner_number, ring_outer_number)" +
|
|||
|
$"values ('{trayID}'," +
|
|||
|
$"'{trayCoatingThickness.Tray.Number}'," +
|
|||
|
$"'{trayCoatingThickness.TrayInner.Number}'," +
|
|||
|
$"'{trayCoatingThickness.RingInner.Number}'," +
|
|||
|
$"'{trayCoatingThickness.RingOuter.Number}')";
|
|||
|
return cmd_data_insert;
|
|||
|
}
|
|||
|
/// <summary>
|
|||
|
/// Tray中对象编号更新Sql语句拼接
|
|||
|
/// </summary>
|
|||
|
/// <param name="trayCoatingThickness"></param>
|
|||
|
/// <param name="trayID"></param>
|
|||
|
/// <returns></returns>
|
|||
|
private string Cmd_update(TrayCoatingThickness trayCoatingThickness, string trayID)
|
|||
|
{
|
|||
|
string cmd_update =
|
|||
|
$"update tray_thickness_data set " +
|
|||
|
$"tray_number = '{trayCoatingThickness.Tray.Number}', " +
|
|||
|
$"tray_inner_number= '{trayCoatingThickness.TrayInner.Number}'," +
|
|||
|
$"ring_inner_number= '{trayCoatingThickness.RingInner.Number}'," +
|
|||
|
$"ring_outer_number= '{trayCoatingThickness.RingOuter.Number}'" +
|
|||
|
$"where wafer_guid = '{trayID}'";
|
|||
|
return cmd_update;
|
|||
|
}
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// 每个环对应的数据插入Sql语句拼接
|
|||
|
/// </summary>
|
|||
|
/// <param name="coatingData"></param>
|
|||
|
/// <returns></returns>
|
|||
|
private string Cmd_main_insert(CoatingData coatingData)
|
|||
|
{
|
|||
|
string cmd_main_insert = "insert into tray_thickness_main" +
|
|||
|
"(tray_number,pm_number, tray_coating_thickness, tray_max_thickness,last_date,last_time)" +
|
|||
|
$"values ('{coatingData.Number}'," +
|
|||
|
$"'{coatingData.PM_Model}'," +
|
|||
|
$"'{coatingData.Current}'," +
|
|||
|
$"'{coatingData.MAX}'," +
|
|||
|
$"'{DateTime.Now.ToString("yyyy-MM-dd")}'," +
|
|||
|
$"'{DateTime.Now.ToString("HH:mm:ss")}')";
|
|||
|
return cmd_main_insert;
|
|||
|
}
|
|||
|
/// <summary>
|
|||
|
/// 每个环对应的数据更新Sql语句拼接
|
|||
|
/// </summary>
|
|||
|
/// <param name="coatingData"></param>
|
|||
|
/// <returns></returns>
|
|||
|
private string Cmd_main_update(CoatingData coatingData)
|
|||
|
{
|
|||
|
string cmd_main_update =
|
|||
|
$"update tray_thickness_main set " +
|
|||
|
$"pm_number= '{coatingData.PM_Model}'," +
|
|||
|
$"tray_coating_thickness= '{coatingData.Current}'," +
|
|||
|
$"tray_max_thickness= '{coatingData.MAX}'," +
|
|||
|
$"last_date= '{DateTime.Now.ToString("yyyy-MM-dd")}'," +
|
|||
|
$"last_time= '{DateTime.Now.ToString("HH:mm:ss")}' " +
|
|||
|
$"where tray_number = '{coatingData.Number}'";
|
|||
|
return cmd_main_update;
|
|||
|
}
|
|||
|
|
|||
|
}
|
|||
|
}
|