프로젝트 구조 개선 및 README.md 추가

- 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>
This commit is contained in:
ChiKyun Kim
2025-08-07 08:35:56 +09:00
parent c17296101a
commit 9a7d1d27c7
140 changed files with 4203 additions and 6791 deletions

View File

@@ -31,7 +31,7 @@ namespace Project
public List<UIControl.CItem> OUTHistory; //출고포트 처리내역
public DataSet1.SIDHistoryDataTable SIDHistory; //sID별 rid 전체 목록 차수별로만 저장된다
public DataSet1.Component_Reel_SID_ConvertDataTable DTSidConvert;
public DataSet1.K4EE_Component_Reel_SID_ConvertDataTable DTSidConvert;
public List<string> DTSidConvertEmptyList;
public List<string> DTSidConvertMultiList;
@@ -218,7 +218,7 @@ namespace Project
//230509
if(DTSidConvert != null) DTSidConvert.Dispose();
DTSidConvert = new DataSet1.Component_Reel_SID_ConvertDataTable();
DTSidConvert = new DataSet1.K4EE_Component_Reel_SID_ConvertDataTable();
DTSidConvertEmptyList = new List<string>();
DTSidConvertMultiList = new List<string>();
}

View File

@@ -45,7 +45,7 @@ namespace Project.Class
public byte LabelPosition { get; set; }
/// <summary>
/// regex check ok
/// 정규식 분석이 완료되었다면 True를 반환합니다
/// </summary>
public Boolean RegExConfirm { get; set; }
public Boolean RefExApply { get; set; }

View File

@@ -4,6 +4,7 @@ using System.Linq;
using System.Text;
using System.Drawing;
using System.ComponentModel;
using System.Windows.Forms;
namespace Project
{
@@ -39,17 +40,19 @@ namespace Project
public bool DisableCamera { get; set; }
public bool DisablePrinter { get; set; }
public bool CheckSIDExsit { get; set; }
//public string ByPassSID { get; set; }
public bool bOwnZPL { get; set; }
public ModelInfoV()
{
vOption = vSIDInfo = vJobInfo = vSIDConv1 = 0;
bOwnZPL = false;
}
public void ReadValue(DataSet1.OPModelRow dr)
{
this.bOwnZPL = dr.bOwnZPL;
this.Title = dr.Title;
this.Code = dr.Code;
this.idx = dr.idx;
@@ -94,6 +97,7 @@ namespace Project
dr.DisableCamera = this.DisableCamera;
dr.DisablePrinter = this.DisablePrinter;
dr.CheckSIDExsit = this.CheckSIDExsit;
dr.bOwnZPL = this.bOwnZPL;
dr.EndEdit();
PUB.mdm.SaveModelV();

View File

@@ -460,8 +460,16 @@ namespace Project.Class
public byte[] QRPositionData { get; private set; }
public byte[] LabelPositionData { get; private set; }
/// <summary>
/// keyence barcodeparse 같은데에서 분석한 자료를 이곳에 추가합니다.
/// 이 데이터는 SPS에서 처리완료됩니다.
/// </summary>
public ConcurrentDictionary<String, Class.KeyenceBarcodeData> barcodelist;
public Boolean BarcodeTouched = false;
/// <summary>
/// keyence 로 부터 신규 바코드가 업데이트되었다
/// </summary>
public Boolean BarcodeDirty = false;
public event PropertyChangedEventHandler PropertyChanged;
@@ -562,7 +570,9 @@ namespace Project.Class
public string QROutRaw { get; set; } //부착된 QR코드의 값
public string ZPL { get; set; } //출력시 사용한 ZPL
public string PrintQRData { get; set; } //출력시 사용한 ZPL에 포함된 QR데이터
public string LastQueryString = string.Empty;
public string LastQueryStringSID = string.Empty;
public string LastQueryStringWMS = string.Empty;
public string LastQueryStringCNV = string.Empty;
public VisionData(string reason)
{
@@ -574,7 +584,9 @@ namespace Project.Class
}
public void Clear(string reason, Boolean timeBackup)
{
LastQueryString = string.Empty;
LastQueryStringSID = string.Empty;
LastQueryStringWMS = string.Empty;
LastQueryStringCNV = string.Empty;
RetryLoader = 0;
ApplyOffset = false;
var baktime = new DateTime(1982, 11, 23);
@@ -668,7 +680,7 @@ namespace Project.Class
VLOT_Trust = false;
VNAME_Trust = false;
BarcodeTouched = false;
BarcodeDirty = false;
MCN = string.Empty;
Target = string.Empty;
@@ -735,7 +747,7 @@ namespace Project.Class
//obj.PrintForce = this.PrintForce;
obj.ReelSize = this.ReelSize;
obj.PrintPositionCheck = this.PrintPositionCheck;
obj.BarcodeTouched = this.BarcodeTouched;
obj.BarcodeDirty = this.BarcodeDirty;
//라벨위치값 복사
for (int i = 0; i < obj.LabelPositionData.Length; i++)
@@ -866,7 +878,7 @@ namespace Project.Class
//obj.PrintForce = this.PrintForce;
obj.ReelSize = this.ReelSize;
obj.PrintPositionCheck = this.PrintPositionCheck;
obj.BarcodeTouched = this.BarcodeTouched;
obj.BarcodeDirty = this.BarcodeDirty;
//라벨위치값 복사
for (int i = 0; i < obj.LabelPositionData.Length; i++)

View File

@@ -6,7 +6,7 @@ namespace Project
public class sPositionData
{
public float inpositionrange { get; set; }
public int Axis;
public short Axis;
public double Position { get; set; }
public double Acc;
public double _dcc;