- UIControl 프로젝트 구조 변경 (CapCleaningControl → Sub/UIControl) - arAjinextek 라이브러리 통합 및 구조 개선 - 새로운 arAjinextek_Union 프로젝트 추가 - 솔루션 파일에 README.md 추가 - QR 모드에서 WMS RCV 태그 인식 기능 강화 - 데이터베이스 스키마 업데이트 및 관련 클래스 수정 - 프린터 및 바코드 장치 연동 로직 개선 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
159 lines
5.0 KiB
C#
159 lines
5.0 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Drawing;
|
|
namespace UIControl
|
|
{
|
|
[Serializable]
|
|
public class CItem
|
|
{
|
|
public Boolean Delete { get; set; }
|
|
/// <summary>
|
|
/// 어떠한 포트에서 픽업 되었는지
|
|
/// </summary>
|
|
public int iPort { get; set; }
|
|
|
|
/// <summary>
|
|
/// 출력 포트
|
|
/// </summary>
|
|
public int oPort { get; set; }
|
|
|
|
/// <summary>
|
|
/// 배출여부
|
|
/// </summary>
|
|
public int ErrorOut { get; set; }
|
|
|
|
/// <summary>
|
|
/// 크기는 어떠한지(7 or 13)
|
|
/// </summary>
|
|
public string Size { get; set; }
|
|
|
|
/// <summary>
|
|
/// 존번호 0~10
|
|
/// </summary>
|
|
public int index { get; set; }
|
|
|
|
/// <summary>
|
|
/// 피커에의해서 드랍된 시간
|
|
/// </summary>
|
|
public DateTime DropTime { get; set; }
|
|
|
|
/// <summary>
|
|
/// 차수별 일련번호
|
|
/// </summary>
|
|
public UInt16 Seq { get; set; }
|
|
|
|
public DateTime BarcodeStart { get; set; }
|
|
public DateTime BarcodeEnd { get; set; }
|
|
|
|
public DateTime PlcStartTime { get; set; }
|
|
public DateTime PlcEndTime { get; set; }
|
|
|
|
public DateTime ZoneIntime { get; set; }
|
|
|
|
/// <summary>
|
|
/// 컨베이어에 들어온 시간
|
|
/// 피커에서 드랍되면 dropTime 과 동일하며, 외부에서 들어오면 센서가 최초 감지한 시간이 된다
|
|
/// </summary>
|
|
public DateTime InTime { get; set; }
|
|
public DateTime OutTime { get; set; }
|
|
public Rectangle Rect { get; set; }
|
|
|
|
/// <summary>
|
|
/// jobhistory에 연결되는 데이터 키
|
|
/// </summary>
|
|
public string JGUID { get; set; }
|
|
|
|
/// <summary>
|
|
/// 바코드 데이터와 연결되는 키값
|
|
/// </summary>
|
|
public string Tag { get; set; }
|
|
public string RID { get; set; }
|
|
public string SID { get; set; }
|
|
public string BarcodeRaw { get; set; }
|
|
public string BarcodeMsg { get; set; }
|
|
public Boolean Processing { get; set; }
|
|
public string GUID { get; private set; }
|
|
public int Qty { get; set; }
|
|
public List<string> UnloaderMsg { get; set; }
|
|
|
|
/// <summary>
|
|
/// 바코드의 완료여부, timeout 혻은 설정 되었을때 적용
|
|
/// </summary>
|
|
public Boolean BarcodeDone { get; set; }
|
|
|
|
public Boolean hasBarcode
|
|
{
|
|
get
|
|
{
|
|
return !string.IsNullOrEmpty(RID);
|
|
}
|
|
}
|
|
|
|
public void AddMessage(string msg)
|
|
{
|
|
if (this.UnloaderMsg.Contains(msg) == false)
|
|
UnloaderMsg.Add(msg);
|
|
}
|
|
|
|
public CItem()
|
|
{
|
|
Qty = 0;
|
|
UnloaderMsg = new List<string>();
|
|
ErrorOut = 0;
|
|
this.GUID = Guid.NewGuid().ToString();
|
|
Tag = string.Empty;
|
|
JGUID = string.Empty;
|
|
Seq = 0;
|
|
SID = string.Empty;
|
|
BarcodeRaw = string.Empty;
|
|
BarcodeMsg = string.Empty;
|
|
RID = string.Empty;
|
|
Rect = Rectangle.Empty;
|
|
Delete = false;
|
|
Processing = false;
|
|
DropTime = DateTime.Parse("1982-11-23");
|
|
BarcodeStart = DateTime.Parse("1982-11-23");
|
|
BarcodeEnd = DateTime.Parse("1982-11-23");
|
|
PlcStartTime = DateTime.Parse("1982-11-23");
|
|
PlcEndTime = DateTime.Parse("1982-11-23");
|
|
InTime = DateTime.Parse("1982-11-23");
|
|
OutTime = DateTime.Parse("1982-11-23");
|
|
ZoneIntime = DateTime.Parse("1982-11-23");
|
|
|
|
index = -1;
|
|
oPort = -1;
|
|
iPort = -1;
|
|
Size = string.Empty;
|
|
}
|
|
public CItem Clone()
|
|
{
|
|
var item = new CItem();
|
|
item.Qty = Qty;
|
|
item.Seq = Seq;//0;
|
|
item.SID =SID;// string.Empty;
|
|
item.BarcodeRaw = BarcodeRaw;//string.Empty;
|
|
item.BarcodeMsg = BarcodeMsg;//string.Empty;
|
|
item.RID = RID;//string.Empty;
|
|
item.Rect = Rect;//Rectangle.Empty;
|
|
item.Delete = Delete;//DropTime;//;
|
|
|
|
item.DropTime =DropTime;// DateTime.Parse("1982-11-23");
|
|
item.BarcodeStart =BarcodeStart;// DateTime.Parse("1982-11-23");
|
|
item.BarcodeEnd = BarcodeEnd;//DropTime;//.Parse("1982-11-23");
|
|
item.PlcStartTime = PlcStartTime;//DateTime.Parse("1982-11-23");
|
|
item.PlcEndTime =PlcEndTime;// DateTime.Parse("1982-11-23");
|
|
item.InTime = InTime;//DropTime;//.Parse("1982-11-23");
|
|
item.OutTime = OutTime;//DateTime.Parse("1982-11-23");
|
|
item.ZoneIntime = ZoneIntime;//DateTime.Parse("1982-11-23");
|
|
item.index = index;
|
|
item.oPort = oPort;
|
|
item.iPort = iPort;
|
|
item.Size = Size;
|
|
return item;
|
|
}
|
|
|
|
}
|
|
}
|