163 lines
5.5 KiB
C#
163 lines
5.5 KiB
C#
using System;
|
|
using System.Drawing;
|
|
using System.Windows.Forms;
|
|
using System.Linq;
|
|
using System.Collections.Generic;
|
|
using AR;
|
|
|
|
namespace Project.Dialog
|
|
{
|
|
public partial class fFinishJob : Form
|
|
{
|
|
public string Command = string.Empty;
|
|
|
|
public fFinishJob()
|
|
{
|
|
InitializeComponent();
|
|
this.KeyPreview = true;
|
|
this.KeyDown += (s1, e1) =>
|
|
{
|
|
if (e1.KeyCode == Keys.Escape)
|
|
{
|
|
Close();
|
|
}
|
|
};
|
|
if (System.Diagnostics.Debugger.IsAttached == true)
|
|
{
|
|
this.TopMost = false;
|
|
}
|
|
this.FormClosed += fFinishJob_FormClosed;
|
|
}
|
|
|
|
|
|
|
|
void fFinishJob_FormClosed(object sender, FormClosedEventArgs e)
|
|
{
|
|
// Comm.WebService.Message -= WebService_Message;
|
|
}
|
|
|
|
private void button1_Click(object sender, EventArgs e)
|
|
{
|
|
this.Close();
|
|
}
|
|
|
|
private void __LoaD(object sender, EventArgs e)
|
|
{
|
|
this.Text = string.Format("금일 작업 목록 입니다({0})", DateTime.Now.ToShortDateString());
|
|
|
|
|
|
if (AR.SETTING.Data.OnlineMode)
|
|
{
|
|
RefreshData();
|
|
}
|
|
|
|
//lbCntL.Text = cntl.ToString();
|
|
//lbCntR.Text = cntr.ToString();
|
|
//lbSumQty.Text = qty.ToString();
|
|
}
|
|
|
|
void RefreshData()
|
|
{
|
|
var sd = DateTime.Parse(DateTime.Now.ToShortDateString() + " 00:00:00");
|
|
var ed = DateTime.Parse(DateTime.Now.ToShortDateString() + " 23:59:59");
|
|
|
|
if (PUB.Result.JobStartTime.Year != 1982) sd = PUB.Result.JobStartTime;
|
|
if (PUB.Result.JobEndTime.Year != 1982) ed = PUB.Result.JobEndTime;
|
|
|
|
label2.Text = string.Format("현 작업 정보({0}~{1})", sd.ToString("HH:mm:ss"), ed.ToString("HH:mm:ss"));
|
|
|
|
//현작업
|
|
var ta = new DataSet1TableAdapters.Component_Reel_ResultTableAdapter();
|
|
var list = ta.GetByValidGuid(sd, ed, AR.SETTING.Data.McName, PUB.Result.guid);
|
|
//var list = db.Component_Reel_Result.Where(t => t.STIME >= sd && t.STIME <= ed && t.PRNVALID == true && t.PRNATTACH == true && t.MC == AR.SETTING.Data.McName);
|
|
UpdateList(list, dataGridView1, dataGridView2);
|
|
|
|
//당일작업
|
|
sd = DateTime.Parse(sd.ToShortDateString() + " 00:00:00");
|
|
ed = DateTime.Parse(sd.ToShortDateString() + " 23:59:59");
|
|
label3.Text = $"당일({sd.ToShortDateString()}) 작업 정보";
|
|
var listday = ta.GetByValid(sd, ed, AR.SETTING.Data.McName);
|
|
UpdateList(listday, dataGridView3, dataGridView4);
|
|
}
|
|
|
|
void UpdateList(DataSet1.Component_Reel_ResultDataTable list, DataGridView dvS, DataGridView dvB)
|
|
{
|
|
dvS.Rows.Clear();
|
|
dvB.Rows.Clear();
|
|
|
|
int sum_reel = 0;
|
|
int sum_cntl = 0;
|
|
int sum_cntr = 0;
|
|
double sum_kpc = 0;
|
|
|
|
if (list != null && list.Count() > 0)
|
|
{
|
|
//SID별
|
|
sum_reel = 0;
|
|
sum_cntl = 0;
|
|
sum_cntr = 0;
|
|
sum_kpc = 0;
|
|
|
|
var grplist = list.OrderBy(t => t.SID).GroupBy(t => t.SID);
|
|
foreach (var row in grplist)
|
|
{
|
|
var sid = row.Key;
|
|
var reel = row.Count();
|
|
var cntl = row.Where(t => t.LOC == "L")?.Count() ?? 0;
|
|
var cntr = row.Where(t => t.LOC == "R")?.Count() ?? 0;
|
|
double kpc = row.Sum(t => t.QTY);
|
|
if (kpc > 0) kpc = kpc / 1000.0;
|
|
|
|
var lim = -1;
|
|
dvS.Rows.Add(new object[] { sid, reel, cntl, cntr, kpc, lim });
|
|
|
|
sum_reel += reel;
|
|
sum_cntl += cntl;
|
|
sum_cntr += cntr;
|
|
sum_kpc += kpc;
|
|
}
|
|
dvS.Rows.Add(new object[] { "TOTAL", sum_reel, sum_cntl, sum_cntr, sum_kpc, null });
|
|
dvS.Rows[dvS.RowCount - 1].DefaultCellStyle.BackColor = Color.DimGray;
|
|
|
|
|
|
//배치별
|
|
sum_reel = 0;
|
|
sum_cntl = 0;
|
|
sum_cntr = 0;
|
|
sum_kpc = 0;
|
|
|
|
var grpbatch = list.OrderBy(t => t.BATCH).GroupBy(t => t.BATCH);
|
|
foreach (var row in grpbatch)
|
|
{
|
|
var sid = row.Key;
|
|
if (sid.isEmpty()) sid = "(none)";
|
|
var reel = row.Count();
|
|
var cntl = row.Where(t => t.LOC == "L")?.Count() ?? 0;
|
|
var cntr = row.Where(t => t.LOC == "R")?.Count() ?? 0;
|
|
double kpc = row.Sum(t => t.QTY);
|
|
if (kpc > 0) kpc = kpc / 1000.0;
|
|
|
|
var lim = -1;
|
|
dvB.Rows.Add(new object[] { sid, reel, cntl, cntr, kpc, lim });
|
|
|
|
sum_reel += reel;
|
|
sum_cntl += cntl;
|
|
sum_cntr += cntr;
|
|
sum_kpc += kpc;
|
|
}
|
|
dvB.Rows.Add(new object[] { "TOTAL", sum_reel, sum_cntl, sum_cntr, sum_kpc, null });
|
|
dvB.Rows[dvB.RowCount - 1].DefaultCellStyle.BackColor = Color.DimGray;
|
|
|
|
}
|
|
dvS.Invalidate();
|
|
dvB.Invalidate();
|
|
}
|
|
|
|
private void label3_Click(object sender, EventArgs e)
|
|
{
|
|
if (AR.SETTING.Data.OnlineMode)
|
|
RefreshData();
|
|
}
|
|
}
|
|
}
|