[성현모] TRA HEX 값 표기 수정
This commit is contained in:
@ -0,0 +1,384 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Drawing;
|
||||
using System.Data;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Forms;
|
||||
using System.Data.SqlClient;
|
||||
using SystemX.Product.TRA.DataManager;
|
||||
using DevExpress.XtraGrid.Views.Grid;
|
||||
using DevExpress.XtraGrid.Columns;
|
||||
using SystemX.Product.TRA.UIControl.Helper;
|
||||
using DevExpress.XtraGrid.Views.Grid.ViewInfo;
|
||||
using SystemX.Product.ALIS.Interface;
|
||||
using static SystemX.Net.Platform.Common.Util.LogMessage;
|
||||
using SystemX.Net.Platform.Common.Util;
|
||||
using static SystemX.Product.CP.TRA.Commons;
|
||||
|
||||
namespace SystemX.Product.TRA.UIControl
|
||||
{
|
||||
public partial class UcTRADetailOverview : UcTRABaseView
|
||||
{
|
||||
public enum eColHide
|
||||
{
|
||||
TestlistNo,
|
||||
StepVersion,
|
||||
RN
|
||||
}
|
||||
|
||||
DMDetailOverview DataManager { get; set; }
|
||||
|
||||
public string GetUseQuery()
|
||||
{
|
||||
return DataManager.strDetailOverviewUseQuery;
|
||||
}
|
||||
|
||||
public OverviewSearchOption Option { get; set; }
|
||||
|
||||
public delegate void evtDataSelectHandler(SelectedDataCollection data);
|
||||
public event evtDataSelectHandler OnSelect;
|
||||
|
||||
public DateTime SearchStart { get; set; }
|
||||
public DateTime SearchEnd { get; set; }
|
||||
|
||||
private IChildController refChildInterface;
|
||||
|
||||
private string GridViewGetActiveFilterText;
|
||||
|
||||
private bool bProductMergeOption = false;
|
||||
|
||||
private int nMergeDataCnt;
|
||||
|
||||
private string[] strMergeReqIDs;
|
||||
|
||||
eSelectDataView eCurrentView;
|
||||
|
||||
public UcTRADetailOverview(IChildController getChildControl, bool bAllowMerge = false, bool bAutoFilterRow = false)
|
||||
{
|
||||
ContentsType = eContents.DetailOverview;
|
||||
|
||||
refChildInterface = getChildControl;
|
||||
|
||||
this.ContextMenuStrip = base.contextMenuStripTest;
|
||||
|
||||
this.ContextMenuStrip.ItemClicked += contextMenuStrip_ItemClicked;
|
||||
|
||||
base.toolStripMenuItemBeginRelDate.Click += contextMenuStripBeginRelDate_ItemClicked;
|
||||
|
||||
SetMenuEnabled(ContentsType);
|
||||
|
||||
bProductMergeOption = bAllowMerge;
|
||||
|
||||
InitializeComponent();
|
||||
|
||||
gridViewMain.OptionsView.AllowCellMerge = true;
|
||||
gridViewMain.OptionsView.ShowAutoFilterRow = bAutoFilterRow;
|
||||
}
|
||||
|
||||
~UcTRADetailOverview()
|
||||
{
|
||||
this.ContextMenuStrip.ItemClicked -= contextMenuStrip_ItemClicked;
|
||||
|
||||
base.toolStripMenuItemBeginRelDate.Click -= contextMenuStripBeginRelDate_ItemClicked;
|
||||
}
|
||||
|
||||
private void contextMenuStripBeginRelDate_ItemClicked(object sender, EventArgs e)
|
||||
{
|
||||
int nTag = Convert.ToInt32(((ToolStripMenuItem)sender).Tag);
|
||||
|
||||
switch (nTag)
|
||||
{
|
||||
case 7:
|
||||
{
|
||||
string GetDateValue = base.toolStripTextBoxBeginRelDate.Text;
|
||||
int nGetDateValue = int.MaxValue;
|
||||
|
||||
if (int.TryParse(GetDateValue, out nGetDateValue))
|
||||
{
|
||||
if (nGetDateValue > 7)
|
||||
nGetDateValue = 7;
|
||||
if (nGetDateValue < -7)
|
||||
nGetDateValue = -7;
|
||||
|
||||
ViewData(eCurrentView, nGetDateValue);
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
private void contextMenuStrip_ItemClicked(object sender, ToolStripItemClickedEventArgs e)
|
||||
{
|
||||
ToolStripItem tsp = e.ClickedItem;
|
||||
|
||||
int nTag = Convert.ToInt32(tsp.Tag);
|
||||
|
||||
switch (nTag)
|
||||
{
|
||||
case 0:
|
||||
refChildInterface.SetOverview();
|
||||
break;
|
||||
case 1:
|
||||
refChildInterface.SetHistoryView();
|
||||
break;
|
||||
case 2:
|
||||
break;
|
||||
case 3:
|
||||
break;
|
||||
case 4:
|
||||
refChildInterface.SetNgHistView(ContentsType);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
public void SetSQLConnection(eSelectDataView SelectView, eOverviewModelNameInfo SelectInfo, IDataBaseController getDBController)
|
||||
{
|
||||
DataManager = new DMDetailOverview(SelectView, SelectInfo, getDBController);
|
||||
}
|
||||
|
||||
public void SetGridViewStyle()
|
||||
{
|
||||
gridViewMain.BeginUpdate();
|
||||
|
||||
foreach (GridColumn gc in gridViewMain.Columns)
|
||||
{
|
||||
if (gc.FieldName.CompareTo("TestDate") == 0)
|
||||
gc.OptionsColumn.AllowMerge = DevExpress.Utils.DefaultBoolean.True;
|
||||
else if (gc.FieldName.CompareTo("Host") == 0)
|
||||
gc.OptionsColumn.AllowMerge = DevExpress.Utils.DefaultBoolean.True;
|
||||
else
|
||||
gc.OptionsColumn.AllowMerge = DevExpress.Utils.DefaultBoolean.False;
|
||||
}
|
||||
|
||||
gridViewMain.EndUpdate();
|
||||
|
||||
gridViewMain.ActiveFilterString = GridViewGetActiveFilterText;
|
||||
}
|
||||
|
||||
public void ViewData(eSelectDataView SelectView, int nGetDateValue = int.MaxValue)
|
||||
{
|
||||
eCurrentView = SelectView;
|
||||
|
||||
Option = new OverviewSearchOption();
|
||||
|
||||
Option.DisplayByStation = !refChildInterface.GetOverviewMergeState();
|
||||
|
||||
DataTable dtResult = DataManager.GetDataView(SelectView, refChildInterface.GetSelectDataOverView(nGetDateValue), Option);
|
||||
|
||||
GridViewGetActiveFilterText = gridViewMain.ActiveFilterString;
|
||||
|
||||
gridControlMain.DataSource = null;
|
||||
gridControlMain.RefreshDataSource();
|
||||
gridViewMain.RefreshData();
|
||||
|
||||
gridControlMain.DataSource = dtResult;
|
||||
gridControlMain.RefreshDataSource();
|
||||
gridViewMain.RefreshData();
|
||||
gridControlMain.ForceInitialize();
|
||||
gridViewMain.PopulateColumns(dtResult);
|
||||
|
||||
foreach (string strName in Enum.GetNames(typeof(eColHide)))
|
||||
{
|
||||
if (gridViewMain.Columns.ColumnByFieldName(strName) != null)
|
||||
gridViewMain.Columns[strName].Visible = false;
|
||||
}
|
||||
|
||||
gridControlMain.Update();
|
||||
|
||||
SetGridViewStyle();
|
||||
}
|
||||
|
||||
|
||||
public void ViewData(eSelectDataView SelectView, SelectedDataCollection data, bool bMergeByPartNumber = false)
|
||||
{
|
||||
eCurrentView = SelectView;
|
||||
|
||||
Option = new OverviewSearchOption();
|
||||
|
||||
Option.DisplayByStation = !bMergeByPartNumber;
|
||||
|
||||
DataTable dtResult = DataManager.GetDataView(SelectView, data, Option);
|
||||
|
||||
if(bProductMergeOption)
|
||||
{
|
||||
nMergeDataCnt = DataManager.dtSubRaw.Rows.Count;
|
||||
|
||||
strMergeReqIDs = new string[nMergeDataCnt];
|
||||
|
||||
for (int i = 0; i < nMergeDataCnt; i++)
|
||||
strMergeReqIDs[i] = DataManager.dtSubRaw.Rows[i]["TestListCntID"].ToString();
|
||||
}
|
||||
|
||||
GridViewGetActiveFilterText = gridViewMain.ActiveFilterString;
|
||||
|
||||
gridControlMain.DataSource = null;
|
||||
gridControlMain.RefreshDataSource();
|
||||
gridViewMain.RefreshData();
|
||||
|
||||
gridControlMain.DataSource = dtResult;
|
||||
gridControlMain.RefreshDataSource();
|
||||
gridViewMain.RefreshData();
|
||||
gridControlMain.ForceInitialize();
|
||||
gridViewMain.PopulateColumns(dtResult);
|
||||
|
||||
foreach (string strName in Enum.GetNames(typeof(eColHide)))
|
||||
{
|
||||
if (gridViewMain.Columns.ColumnByFieldName(strName) != null)
|
||||
gridViewMain.Columns[strName].Visible = false;
|
||||
}
|
||||
|
||||
gridControlMain.Update();
|
||||
|
||||
SetGridViewStyle();
|
||||
}
|
||||
|
||||
public bool DoSelect(DataRow dtRow)
|
||||
{
|
||||
if (dtRow == null)
|
||||
return false;
|
||||
|
||||
bool bDataCheckResult = true;
|
||||
|
||||
try
|
||||
{
|
||||
string strDate = dtRow[DMDetailOverview.eColList.TestDate.ToString()].ToString();
|
||||
string strStartTime = dtRow[DMDetailOverview.eColList.FirstTestTime.ToString()].ToString();
|
||||
string strEndTime = dtRow[DMDetailOverview.eColList.FinalTestTime.ToString()].ToString();
|
||||
|
||||
DateTime dtDate = DateTime.Parse(strDate);
|
||||
|
||||
strStartTime = dtDate.ToShortDateString() + " " + strStartTime;
|
||||
strEndTime = dtDate.ToShortDateString() + " " + strEndTime;
|
||||
|
||||
DateTime dtStart = DateTime.Parse(strStartTime);
|
||||
DateTime dtEnd = DateTime.Parse(strEndTime);
|
||||
|
||||
//dtEnd = dtEnd.AddHours(-dtStart.Hour);
|
||||
//dtEnd = dtEnd.AddHours(23.9999);
|
||||
|
||||
//string strStnName, string strHostID, string strSectionID, string strTestType,
|
||||
//string strProdNo, string strTestCode, string strParentNo, string strProdCode,
|
||||
//string strFileVer, string strStepVer)
|
||||
|
||||
string strTestListCntID = string.Empty;
|
||||
|
||||
if (bProductMergeOption == false)
|
||||
strTestListCntID = dtRow[DMDetailOverview.eColList.TestListCntID.ToString()].ToString();
|
||||
|
||||
SelectedDataCollection selData = new SelectedDataCollection(
|
||||
SearchStart,
|
||||
SearchEnd,
|
||||
dtStart,
|
||||
dtEnd,
|
||||
Option.DisplayByStation ? dtRow[DMDetailOverview.eColList.StationName.ToString()].ToString() : string.Empty,
|
||||
Option.DisplayByStation ? dtRow[DMDetailOverview.eColList.Host.ToString()].ToString() : string.Empty,
|
||||
Option.DisplayByStation ? dtRow[DMDetailOverview.eColList.Section.ToString()].ToString() : string.Empty,
|
||||
dtRow[DMDetailOverview.eColList.TestType.ToString()].ToString(),
|
||||
dtRow[DMDetailOverview.eColList.ProductNo.ToString()].ToString(),
|
||||
dtRow[DMDetailOverview.eColList.TestCode.ToString()].ToString(),
|
||||
dtRow[DMDetailOverview.eColList.ParentNo.ToString()].ToString(),
|
||||
dtRow[DMDetailOverview.eColList.FileCode.ToString()].ToString(),
|
||||
dtRow[DMOverview.eColList.TestListFileNo.ToString()].ToString(),
|
||||
dtRow[DMOverview.eColList.TestListVariantNo.ToString()].ToString(),
|
||||
dtRow[DMDetailOverview.eColList.FileVersion.ToString()].ToString(),
|
||||
dtRow[DMDetailOverview.eColList.StepVersion.ToString()].ToString(),
|
||||
strTestListCntID);
|
||||
|
||||
if (bProductMergeOption)
|
||||
{
|
||||
selData.SetCountRequestID(nMergeDataCnt);
|
||||
|
||||
selData.CopyReqIDs(strMergeReqIDs);
|
||||
}
|
||||
|
||||
refChildInterface.AnnounceContentsType(ContentsType);
|
||||
|
||||
OnSelect(selData);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
MessageOutput.ConsoleWrite($"Detail Overview DoSelect Error: {e.Message}", ConsoleColor.Red, LogMessage.LogMessageLevel.FATAL);
|
||||
|
||||
bDataCheckResult = false;
|
||||
}
|
||||
finally
|
||||
{
|
||||
;//
|
||||
}
|
||||
|
||||
return bDataCheckResult;
|
||||
}
|
||||
|
||||
private DataRow GetRowInfo(object Viewer, int nRowHndl)
|
||||
{
|
||||
DataRow dtRow = null;
|
||||
|
||||
try
|
||||
{
|
||||
GridView view = Viewer as GridView;
|
||||
var dvRow = view.GetRow(nRowHndl);
|
||||
dtRow = (dvRow as DataRowView).Row;
|
||||
}
|
||||
catch
|
||||
{
|
||||
dtRow = null;
|
||||
}
|
||||
|
||||
return dtRow;
|
||||
}
|
||||
|
||||
private void gridViewMain_RowClick(object sender, DevExpress.XtraGrid.Views.Grid.RowClickEventArgs e)
|
||||
{
|
||||
int nRowHndl = e.RowHandle;
|
||||
|
||||
if (nRowHndl < 0)
|
||||
return;
|
||||
|
||||
DoSelect(GetRowInfo(sender, nRowHndl));
|
||||
}
|
||||
|
||||
private void gridViewMain_RowStyle(object sender, RowStyleEventArgs e)
|
||||
{
|
||||
GridView view = sender as GridView;
|
||||
if (view.FocusedRowHandle == e.RowHandle)
|
||||
{
|
||||
GridViewInfo viewInfo = gridViewMain.GetViewInfo() as GridViewInfo;
|
||||
e.Appearance.Assign(viewInfo.PaintAppearance.FocusedRow);
|
||||
e.HighPriority = true;
|
||||
}
|
||||
}
|
||||
|
||||
private void gridViewMain_MouseDown(object sender, MouseEventArgs e)
|
||||
{
|
||||
if (e.Button == MouseButtons.Right)
|
||||
{
|
||||
GridHitInfo hInfo = gridViewMain.CalcHitInfo(gridControlMain.PointToClient(Cursor.Position));
|
||||
|
||||
if (hInfo.RowInfo != null)
|
||||
{
|
||||
int nGetRowHandle = hInfo.RowInfo.RowHandle;
|
||||
|
||||
DoSelect(GetRowInfo(gridViewMain, nGetRowHandle));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void gridViewMain_RowCellClick(object sender, RowCellClickEventArgs e)
|
||||
{
|
||||
int nClickCnt = e.Clicks;
|
||||
|
||||
if (nClickCnt < 2)
|
||||
return;
|
||||
|
||||
int nRowHndl = e.RowHandle;
|
||||
|
||||
if (nRowHndl < 0)
|
||||
return;
|
||||
|
||||
if(DoSelect(GetRowInfo(sender, nRowHndl)))
|
||||
refChildInterface.SetHistoryView();
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user