Initial commit
This commit is contained in:
322
Handler/ResultView/fHistory.cs
Normal file
322
Handler/ResultView/fHistory.cs
Normal file
@@ -0,0 +1,322 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Data;
|
||||
using System.Drawing;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Windows.Forms;
|
||||
|
||||
namespace ResultView
|
||||
{
|
||||
public partial class fHistory : Form
|
||||
{
|
||||
public StdLabelPrint.LabelPrint PrinterL = null;
|
||||
// public StdLabelPrint.LabelPrint PrinterR = null;
|
||||
public fHistory()
|
||||
{
|
||||
InitializeComponent();
|
||||
Pub.init();
|
||||
this.KeyDown += (s1, e1) =>
|
||||
{
|
||||
if (e1.KeyCode == Keys.Escape) this.Close();
|
||||
else if (e1.KeyCode == Keys.F5) btSearch.PerformClick();
|
||||
};
|
||||
this.tbSearch.KeyDown += (s1, e1) => { if (e1.KeyCode == Keys.Enter) btSearch.PerformClick(); };
|
||||
this.dv.CellFormatting += (s1, e1) =>
|
||||
{
|
||||
if (e1.RowIndex >= 0 && e1.ColumnIndex >= 0)
|
||||
{
|
||||
var dv = s1 as DataGridView;
|
||||
//var cell = dv.Rows[e1.RowIndex].Cells["dvc_upload"];
|
||||
//if (cell.Value != null)
|
||||
//{
|
||||
// if (cell.Value.ToString() == "X")
|
||||
// dv.Rows[e1.RowIndex].DefaultCellStyle.ForeColor = Color.Red;
|
||||
// else
|
||||
// dv.Rows[e1.RowIndex].DefaultCellStyle.ForeColor = Color.Black;
|
||||
//}
|
||||
//else dv.Rows[e1.RowIndex].DefaultCellStyle.ForeColor = Color.Black;
|
||||
}
|
||||
};
|
||||
this.dv.DataError += dv_DataError;
|
||||
|
||||
this.Text = string.Format("{0} ver{1} - {2}", Application.ProductName, Application.ProductVersion,Pub.setting.MCName);
|
||||
}
|
||||
|
||||
void dv_DataError(object sender, DataGridViewDataErrorEventArgs e)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
private void fHistory_Load(object sender, EventArgs e)
|
||||
{
|
||||
|
||||
dtSD.Value = DateTime.Now;
|
||||
dtED.Value = DateTime.Now;
|
||||
|
||||
PrinterL = new StdLabelPrint.LabelPrint(Pub.setting.PrinterName);
|
||||
//PrinterR = new StdLabelPrint.LabelPrint("PrinterR");
|
||||
ApplyZplCode();
|
||||
|
||||
refreshList();
|
||||
|
||||
}
|
||||
|
||||
public void ApplyZplCode()
|
||||
{
|
||||
string zplfil = string.Empty;
|
||||
var basedir = new System.IO.DirectoryInfo(Util.CurrentPath);
|
||||
if (Pub.setting.PrinterForm7)
|
||||
{
|
||||
zplfil = System.IO.Path.Combine(basedir.Parent.FullName, "zpl7.txt");
|
||||
}
|
||||
else
|
||||
{
|
||||
zplfil = System.IO.Path.Combine(basedir.Parent.FullName, "zpl.txt");
|
||||
}
|
||||
|
||||
if (System.IO.File.Exists(zplfil))
|
||||
{
|
||||
PrinterL.baseZPL = System.IO.File.ReadAllText(zplfil, System.Text.Encoding.Default);
|
||||
}
|
||||
else
|
||||
{
|
||||
Pub.log.AddAT("기본 ZPL파일이 없어 설정파일의 내용을 사용합니다");
|
||||
if (Pub.setting.PrinterForm7)
|
||||
{
|
||||
PrinterL.baseZPL = Properties.Settings.Default.ZPL7;
|
||||
}
|
||||
else
|
||||
{
|
||||
PrinterL.baseZPL = Properties.Settings.Default.ZPL;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
private void checkBox5_CheckedChanged(object sender, EventArgs e)
|
||||
{
|
||||
// cmbUser.Enabled = checkBox5.Checked;
|
||||
// if(cmbUser.Enabled && cmbUser.Text.isEmpty())
|
||||
// {
|
||||
// cmbUser.Text = string.Format("{0}({1})", Pub.LoginName, Pub.LoginNo);
|
||||
// }
|
||||
}
|
||||
|
||||
void refreshList()
|
||||
{
|
||||
//검색일자 검색
|
||||
if (dtED.Value < dtSD.Value)
|
||||
{
|
||||
Util.MsgE("검색종료일자가 시작일자보다 작습니다");
|
||||
dtSD.Value = dtED.Value;
|
||||
dtSD.Focus();
|
||||
return;
|
||||
}
|
||||
//저장소초기화
|
||||
this.dataSet1.Component_Reel_Result.Clear();
|
||||
|
||||
System.Diagnostics.Stopwatch wat = new System.Diagnostics.Stopwatch();
|
||||
wat.Restart();
|
||||
|
||||
//자료를 검색한다.
|
||||
var search = tbSearch.Text.Trim();
|
||||
if (search.isEmpty()) search = "%";
|
||||
else search = "%" + search + "%";
|
||||
|
||||
ta.Fill(this.dataSet1.Component_Reel_Result, Pub.setting.MCName, dtSD.Value.ToShortDateString(), dtED.Value.ToShortDateString(), search);
|
||||
|
||||
wat.Stop();
|
||||
|
||||
tbSearch.Focus();
|
||||
tbSearch.SelectAll();
|
||||
dv.AutoResizeColumns();
|
||||
|
||||
}
|
||||
private void btSearch_Click(object sender, EventArgs e)
|
||||
{
|
||||
refreshList();
|
||||
}
|
||||
|
||||
private void tbiSearch_KeyDown(object sender, KeyEventArgs e)
|
||||
{
|
||||
//내부검색기능
|
||||
if (e.KeyCode == Keys.Enter)
|
||||
{
|
||||
FindData();
|
||||
}
|
||||
|
||||
}
|
||||
void FindData()
|
||||
{
|
||||
string searchkey = tbFind.Text.Trim();
|
||||
if (searchkey.isEmpty())
|
||||
{
|
||||
bs.Filter = "";
|
||||
tbFind.BackColor = SystemColors.Control;
|
||||
}
|
||||
else
|
||||
{
|
||||
string filter = "rid0 like '%{0}%' or sid0 like '%{0}%' or qr like '%{0}%' or vlot like '%{0}%'";
|
||||
filter = string.Format(filter, searchkey);
|
||||
try
|
||||
{
|
||||
bs.Filter = filter;
|
||||
tbFind.BackColor = Color.Lime;
|
||||
}
|
||||
catch
|
||||
{
|
||||
bs.Filter = "";
|
||||
tbFind.BackColor = Color.Pink;
|
||||
}
|
||||
}
|
||||
tbFind.Focus();
|
||||
tbFind.SelectAll();
|
||||
}
|
||||
private void btExport_Click(object sender, EventArgs e)
|
||||
{
|
||||
saveXLS();
|
||||
}
|
||||
void saveXLS()
|
||||
{
|
||||
|
||||
var license = ("Amkor Technology/windows-242f240302c3e50d6cb1686ba2q4k0o9").Split('/');
|
||||
var xls = new libxl.XmlBook();
|
||||
xls.setKey(license[0], license[1]);
|
||||
xls.addSheet("Result");
|
||||
var Sheet = xls.getSheet(0);
|
||||
|
||||
int row = 0;
|
||||
for (int i = 0; i < this.dv.Columns.Count; i++)
|
||||
{
|
||||
var col = this.dv.Columns[i];
|
||||
Sheet.writeStr(row, i, col.HeaderText);
|
||||
}
|
||||
row += 1;
|
||||
foreach (DataGridViewRow dr in this.dv.Rows)
|
||||
{
|
||||
for (int i = 0; i < this.dv.Columns.Count; i++)
|
||||
{
|
||||
var propertyName = dv.Columns[i].DataPropertyName;
|
||||
if (propertyName.isEmpty())
|
||||
{
|
||||
Sheet.writeStr(row, i, dr.Cells[i].FormattedValue.ToString());// dr[colname].ToString());
|
||||
}
|
||||
else
|
||||
{
|
||||
var dType = this.dataSet1.Component_Reel_Result.Columns[propertyName].DataType;
|
||||
if (dType == typeof(float)) Sheet.writeNum(row, i, (float)dr.Cells[i].Value);
|
||||
else if (dType == typeof(double)) Sheet.writeNum(row, i, (double)dr.Cells[i].Value);
|
||||
else if (dType == typeof(int)) Sheet.writeNum(row, i, (int)dr.Cells[i].Value);
|
||||
else Sheet.writeStr(row, i, dr.Cells[i].FormattedValue.ToString());// dr[colname].ToString());
|
||||
}
|
||||
|
||||
}
|
||||
row += 1;
|
||||
}
|
||||
Sheet.setAutoFitArea(0, 0, row, dv.Columns.Count);
|
||||
|
||||
string filename = "export_{0}~{1}.xlsx";
|
||||
filename = string.Format(filename, dtSD.Value.ToString("yyyyMMdd"), dtED.Value.ToString("yyyyMMdd"));
|
||||
|
||||
var sd = new SaveFileDialog();
|
||||
sd.Filter = "xlsx|*.xlsx";
|
||||
sd.FileName = filename;
|
||||
sd.RestoreDirectory = true;
|
||||
if (sd.ShowDialog() != System.Windows.Forms.DialogResult.OK) return;
|
||||
|
||||
try
|
||||
{
|
||||
|
||||
xls.save(sd.FileName);
|
||||
Pub.log.Add("Export Data : " + sd.FileName);
|
||||
if (Util.MsgQ("다음 파일이 생성되었습니다.\n\n" + sd.FileName + "\n\n파일을 확인하시겠습니까?") == DialogResult.Yes)
|
||||
Util.RunExplorer(sd.FileName);
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
Pub.log.AddE(ex.Message);
|
||||
}
|
||||
|
||||
}
|
||||
private void 목록저장ToolStripMenuItem_Click(object sender, EventArgs e)
|
||||
{
|
||||
saveXLS();
|
||||
}
|
||||
|
||||
|
||||
|
||||
private void label2_Click(object sender, EventArgs e)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
private void viewXMLToolStripMenuItem_Click(object sender, EventArgs e)
|
||||
{
|
||||
//var drv = this.bs.Current as DataRowView;
|
||||
//if (drv == null) return;
|
||||
//var dr = drv.Row as DataSet1.Component_Reel_ResultRow;
|
||||
//var file = dr.info_filename;
|
||||
//if (file == "") return;
|
||||
//Util.RunExplorer(file);
|
||||
}
|
||||
|
||||
private void dv_CellDoubleClick(object sender, DataGridViewCellEventArgs e)
|
||||
{
|
||||
//var drv = this.bs.Current as DataRowView;
|
||||
//if (drv == null) return;
|
||||
//var dr = drv.Row as DataSet1.Component_Reel_ResultRow;
|
||||
//var fi = new System.IO.FileInfo(dr.info_filename);
|
||||
|
||||
//if (fi.Exists == false)
|
||||
//{
|
||||
// Util.MsgE("결과 파일이 없습니다");
|
||||
// return;
|
||||
//}
|
||||
//else
|
||||
//{
|
||||
// Util.RunExplorer(fi.Directory.FullName);
|
||||
//}
|
||||
|
||||
}
|
||||
private void sendDataToolStripMenuItem_Click(object sender, EventArgs e)
|
||||
{
|
||||
var drv = this.bs.Current as DataRowView;
|
||||
if (drv == null) return;
|
||||
var dr = drv.Row as DataSet1.Component_Reel_ResultRow;
|
||||
var data = dr.QR;
|
||||
var bcd = new StdLabelPrint.CAmkorSTDBarcode(data);
|
||||
if (bcd.VENDERNAME.isEmpty() && dr.VNAME.isEmpty() == false)
|
||||
bcd.VENDERNAME = dr.VNAME.Trim();
|
||||
|
||||
var reeldata = new StdLabelPrint.Reel();
|
||||
reeldata.id = bcd.RID;
|
||||
reeldata.manu = bcd.VENDERNAME;
|
||||
reeldata.lot = bcd.VLOT;
|
||||
reeldata.mfg = bcd.MFGDate;
|
||||
reeldata.qty = bcd.QTY;
|
||||
reeldata.sid = bcd.SID;
|
||||
reeldata.partnum = bcd.PARTNO;
|
||||
|
||||
PrinterL.Print(reeldata, false, Pub.setting.DrawBorder, Pub.setting.PrinterForm7);
|
||||
}
|
||||
|
||||
|
||||
private void btSetting_Click(object sender, EventArgs e)
|
||||
{
|
||||
var f = new fSetting();
|
||||
f.ShowDialog();
|
||||
PrinterL.printerName = Pub.setting.PrinterName;
|
||||
}
|
||||
|
||||
private void button1_Click(object sender, EventArgs e)
|
||||
{
|
||||
var str = tbFind.Text.Trim();
|
||||
var f = new Dialog.fTouchKeyFull("검색어 입력", str);
|
||||
if (f.ShowDialog() != DialogResult.OK) return;
|
||||
tbFind.Text = f.tbInput.Text.Trim();
|
||||
FindData();
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user