프로젝트 구조 개선 및 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

@@ -10,20 +10,30 @@ namespace Project.Device
{
public string LastPrintZPL = string.Empty;
public string qrData = string.Empty;
public string baseZPL
{
get
{
var fi = new System.IO.FileInfo(AR.SETTING.Data.baseZPLFile);
if (fi.Exists)
{
return System.IO.File.ReadAllText(fi.FullName, System.Text.Encoding.Default);
}
else return Properties.Settings.Default.ZPL7;
}
}
public string ZPLFileName { get; set; } = "zpl.txt";
public string baseZPL
{
get
{
var fi = new System.IO.FileInfo(ZPLFileName);
if (fi.Exists == false || fi.Length == 0)
{
PUB.log.AddE($"{ZPLFileName} 이 존재하지않거나 데이터가 없습니다 zpl.txt 기본으로 변경합니다");
fi = new System.IO.FileInfo("zpl.txt");
if (fi.Exists == false) PUB.log.AddE("인쇄기본파일(zpl.txt)가 존재하지 않습니다");
}
if (fi.Exists && fi.Length > 1)
return System.IO.File.ReadAllText(fi.FullName, System.Text.Encoding.Default);
else
{
PUB.log.AddAT("ZPL파일이 없어 설정의 ZPL코드를 사용합니다");
return Properties.Settings.Default.ZPL7;
}
public SATOPrinter()
}
}
public SATOPrinter()
{
//this.baseZPL = Properties.Settings.Default.ZPL7;
this.Terminal = eTerminal.CR;

View File

@@ -1,4 +1,5 @@
using arCtl;
using AR;
using arCtl;
using SATOPrinterAPI;
using System;
using System.Collections.Generic;
@@ -17,16 +18,27 @@ namespace Project.Device
public string qrData = string.Empty;
public string PortName { get; set; }
public int BaudRate { get; set; }
public string ZPLFileName { get; set; } = "zpl.txt";
public string baseZPL
{
get
{
var fi = new System.IO.FileInfo(AR.SETTING.Data.baseZPLFile);
if (fi.Exists)
var fi = new System.IO.FileInfo(ZPLFileName);
if (fi.Exists == false || fi.Length == 0)
{
return System.IO.File.ReadAllText(fi.FullName, System.Text.Encoding.Default);
PUB.log.AddE($"{ZPLFileName} 이 존재하지않거나 데이터가 없습니다 zpl.txt 기본으로 변경합니다");
fi = new System.IO.FileInfo("zpl.txt");
if (fi.Exists == false) PUB.log.AddE("인쇄기본파일(zpl.txt)가 존재하지 않습니다");
}
else return Properties.Settings.Default.ZPL7;
if (fi.Exists && fi.Length > 1)
return System.IO.File.ReadAllText(fi.FullName, System.Text.Encoding.Default);
else
{
PUB.log.AddAT("ZPL파일이 없어 설정의 ZPL코드를 사용합니다");
return Properties.Settings.Default.ZPL7;
}
}
}

View File

@@ -26,7 +26,7 @@ namespace Project
DateTime swPLCConTime = DateTime.Now;
Boolean bRunConnection = true;
DateTime SendStatusTime = DateTime.Now;
void bwDeviceConnection()
{
while (bRunConnection && this.Disposing == false && this.Disposing == false)
@@ -285,29 +285,6 @@ namespace Project
}
ConnectSeq = 0;
}
var tsst = DateTime.Now - SendStatusTime;
if (tsst.TotalSeconds > 3)
{
//내정보를 전송한다.
var modelVision = "";
if (PUB.Result.isSetvModel) modelVision = PUB.Result.vModel.Title;
var dt = new
{
mc = SETTING.Data.McName,
status = PUB.sm.Step.ToString(),
model = modelVision,
bypass = (VAR.BOOL[eVarBool.Opt_DisablePrinter] ? true : false),
};
string jsonStr = Newtonsoft.Json.JsonConvert.SerializeObject(dt);
var url = $@"http://10.131.32.29:8080/api/updatelastatus";
var rlt = PostFromUrl(url, jsonStr, out bool iserr, _timeout: 1000);
if (iserr) PUB.log.AddE($"ECS 상태정보실패 메세지:{rlt}");
SendStatusTime = DateTime.Now;
}
System.Threading.Thread.Sleep(2000);
}