[성현모] tra 날짜 오류 수정, tra recovery 온도그래프, 버전셀렉트, ok avg 기능 추가
This commit is contained in:
@ -1,4 +1,7 @@
|
||||
using System;
|
||||
using DataBaseConnection.Control;
|
||||
using DevExpress.Pdf.Native.BouncyCastle.Ocsp;
|
||||
using Newtonsoft.Json;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Data;
|
||||
using System.Data.Common;
|
||||
@ -6,16 +9,12 @@ using System.Data.SqlClient;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using SystemX.Common.Util;
|
||||
using SystemX.Product.ALIS.Interface;
|
||||
using SystemX.Product.CP.TRA;
|
||||
using SystemX.Product.TRA.UIControl;
|
||||
|
||||
using static SystemX.Product.TRA.DataManager.DMOverview;
|
||||
using static SystemX.Product.CP.TRA.Commons;
|
||||
using DataBaseConnection.Control;
|
||||
using Newtonsoft.Json;
|
||||
using SystemX.Common.Util;
|
||||
|
||||
using static SystemX.Product.TRA.DataManager.DMOverview;
|
||||
using CPXV2Log = SystemX.Net.Platform.SystemX.Net.XEFCore.DBContext.CPXV2Log;
|
||||
|
||||
namespace SystemX.Product.TRA.DataManager
|
||||
@ -24,13 +23,13 @@ namespace SystemX.Product.TRA.DataManager
|
||||
{
|
||||
public enum eColHideListLog
|
||||
{
|
||||
No,
|
||||
No,
|
||||
//TestID
|
||||
}
|
||||
|
||||
public enum eColTestLog
|
||||
{
|
||||
No,
|
||||
No,
|
||||
//TestID,
|
||||
StepID,
|
||||
MeasVal,
|
||||
@ -107,14 +106,14 @@ namespace SystemX.Product.TRA.DataManager
|
||||
TestSummarySelectView = eSelectDataView.DataDocumentViewC1;
|
||||
ShortTermDBConn = getDBController.GetShortTermConn1();
|
||||
|
||||
LongTermDBConn = getDBController.GetLongTermConn1().First().Value;
|
||||
LongTermDBConn = getDBController.GetLongTermConn1().Where(x => x.Key.Contains(dtStart.Year.ToString())).First().Value;
|
||||
}
|
||||
else if (SelectView == eSelectDataView.DataDocumentViewC2)
|
||||
{
|
||||
TestSummarySelectView = eSelectDataView.DataDocumentViewC2;
|
||||
ShortTermDBConn = getDBController.GetShortTermConn2();
|
||||
|
||||
LongTermDBConn = getDBController.GetLongTermConn2().First().Value;
|
||||
LongTermDBConn = getDBController.GetLongTermConn2().Where(x => x.Key.Contains(dtStart.Year.ToString())).First().Value;
|
||||
}
|
||||
}
|
||||
|
||||
@ -262,26 +261,26 @@ namespace SystemX.Product.TRA.DataManager
|
||||
}
|
||||
|
||||
//PK 키 지정
|
||||
DataColumn[] keys1 = new DataColumn[1];
|
||||
keys1[0] = new DataColumn();
|
||||
keys1[0] = dtResult.Columns["StepID"];
|
||||
//DataColumn[] keys1 = new DataColumn[1];
|
||||
//keys1[0] = new DataColumn();
|
||||
//keys1[0] = dtResult.Columns["StepID"];
|
||||
|
||||
dtResult.PrimaryKey = keys1;
|
||||
//dtResult.PrimaryKey = keys1;
|
||||
|
||||
return dtResult;
|
||||
return dtHistVersionTL;
|
||||
}
|
||||
|
||||
public DataTable RefineStepVersion(DataTable dtTestlist, SelectedDataCollection data)
|
||||
{
|
||||
var DuplicatedSteps = dtTestlist.AsEnumerable().GroupBy(x => x[eColTestlist.StepID.ToString()]).
|
||||
Select(x => new { StepID = x.Key, Count = x.Count() }).Where(x => x.Count > 1);
|
||||
|
||||
foreach(var value in DuplicatedSteps)
|
||||
|
||||
foreach (var value in DuplicatedSteps)
|
||||
{
|
||||
List<DataRow> vdtRow = dtTestlist.AsEnumerable().Where(x => x[eColTestlist.StepID.ToString()].ToString() == value.StepID.ToString()).ToList();
|
||||
DataRow vExcRow = vdtRow.Where(x => x[eColTestlist.StepVersion.ToString()].ToString() == data.StepVersion).FirstOrDefault();
|
||||
|
||||
if(vExcRow == null)
|
||||
if (vExcRow == null)
|
||||
{
|
||||
int nMaxVer = vdtRow.Max(x => Convert.ToInt32(x[eColTestlist.StepVersion.ToString()]));
|
||||
|
||||
@ -310,7 +309,10 @@ namespace SystemX.Product.TRA.DataManager
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
//start = DateTime
|
||||
string requId = testReqID?.First();
|
||||
|
||||
int year = Convert.ToInt32(requId.Split(';', '@')[0].Substring(0, 4));
|
||||
start = new DateTime(year, 1, 1);
|
||||
}
|
||||
|
||||
//string strGetDataTime = testReqID?.First().Split(';')[0];
|
||||
@ -329,17 +331,17 @@ namespace SystemX.Product.TRA.DataManager
|
||||
{
|
||||
ShortTermDBConn = GetDBController.GetShortTermConn1();
|
||||
|
||||
LongTermDBConn = GetDBController.GetLongTermConn1().First().Value;
|
||||
LongTermDBConn = GetDBController.GetLongTermConn1().Where(x => x.Key.Contains(start.Year.ToString())).First().Value;
|
||||
}
|
||||
else if (TestSummarySelectView == eSelectDataView.DataDocumentViewC2)
|
||||
{
|
||||
ShortTermDBConn = GetDBController.GetShortTermConn2();
|
||||
|
||||
LongTermDBConn = GetDBController.GetLongTermConn2().First().Value;
|
||||
LongTermDBConn = GetDBController.GetLongTermConn2().Where(x => x.Key.Contains(start.Year.ToString())).First().Value;
|
||||
}
|
||||
|
||||
DataTable dtResult = new DataTable();
|
||||
string strQuery = string.Empty;
|
||||
string strQuery = string.Empty;
|
||||
|
||||
strQuery += $"SELECT * ";
|
||||
strQuery += $"FROM {DMCommon.SummaryLogTable} AS X ";
|
||||
@ -362,7 +364,7 @@ namespace SystemX.Product.TRA.DataManager
|
||||
// strQuery += "OR ";
|
||||
//}
|
||||
|
||||
strQuery += $";";
|
||||
strQuery += $";";
|
||||
|
||||
if (DatabaseConnControl.ScanLongTermLog) SQLCmd = new SqlCommand(strQuery, LongTermDBConn);
|
||||
else SQLCmd = new SqlCommand(strQuery, ShortTermDBConn);
|
||||
@ -374,9 +376,9 @@ namespace SystemX.Product.TRA.DataManager
|
||||
dtReader.Close();
|
||||
|
||||
List<CPXV2Log.Tables.HIST_TestResult> list = new List<CPXV2Log.Tables.HIST_TestResult>();
|
||||
for (int i=0; i<dtResult.Rows.Count; i++)
|
||||
for (int i = 0; i < dtResult.Rows.Count; i++)
|
||||
{
|
||||
list.AddRange(JsonConvert.DeserializeObject<List<CPXV2Log.Tables.HIST_TestResult>>(dtResult.Rows[i]["LogData"].ToString().GzipDecompress()));
|
||||
list.AddRange(JsonConvert.DeserializeObject<List<CPXV2Log.Tables.HIST_TestResult>>(dtResult.Rows[i]["LogData"].ToString().GzipDecompress()));
|
||||
}
|
||||
|
||||
/*
|
||||
@ -390,7 +392,7 @@ namespace SystemX.Product.TRA.DataManager
|
||||
strQuery += $"FROM [{DMCommon.SummaryLogTable}] AS X WITH(NOLOCK) ";
|
||||
strQuery += $"INNER JOIN [{strTableTerm}] AS Y WITH(NOLOCK) ON (Y.AccessKey BETWEEN X.AccessStart AND X.AccessEnd) ";
|
||||
*/
|
||||
|
||||
|
||||
dtResult = list.GroupBy(x => x.StepID).Select(y => new
|
||||
{
|
||||
StepID = y.First().StepID,
|
||||
@ -430,7 +432,7 @@ namespace SystemX.Product.TRA.DataManager
|
||||
|
||||
if (data == null)
|
||||
return dtResult;
|
||||
|
||||
|
||||
|
||||
SQLCmd = new SqlCommand(strQuery, ShortTermDBConn);
|
||||
SQLCmd.CommandTimeout = DMCommon.nDefaultScanTime;
|
||||
|
||||
Reference in New Issue
Block a user