BUG修复

This commit is contained in:
zhangzhuo 2025-03-21 09:07:39 +08:00
parent 87f53c8949
commit 61407f6436
6 changed files with 75 additions and 42 deletions

View File

@ -110,20 +110,38 @@ public class HyosungPlcService(ILogger<HyosungPlcService> logger) : IHyosungPlcS
var address = index == 1 ? 13060 : 13061;
if (index == 2)
{
var data = SetBit(0, side);
await _writer.WriteShortsAsync(13053, data);
short data = 0;
switch (side)
{
case 0:
data = 1;
break;
case 1:
data = 2;
break;
case 2:
data = 6;
break;
case 3:
data = 14;
break;
case 4:
data = 30;
break;
}
await _writer.WriteShortsAsync(13050, [1,1,1, data] );
}
await _writer.WriteShortsAsync(address, (short)(result ? 1 : 2));
}
static byte SetBit(byte value, int bitPosition)
{
// 创建一个掩码,该掩码只有第 bitPosition 位为 1
byte mask = (byte)(1 << bitPosition);
// 使用按位或操作将 value 的第 bitPosition 位置为 1
return (byte)(value | mask);
}
//static byte SetBit(byte value, int bitPosition)
//{
// // 创建一个掩码,该掩码只有第 bitPosition 位为 1
// byte mask = (byte)(1 << bitPosition);
// // 使用按位或操作将 value 的第 bitPosition 位置为 1
// return (byte)(value | mask);
//}
public event Func<int, Task>? OnPlcRequestScanProduct;

View File

@ -104,14 +104,16 @@ public class HyosungPrinter(
{
var variety = await varietyService.GetById(tray.VarietyId);
var netWeight = tray.NetWeight.ToString("0.0");
if (netWeight.EndsWith(".0"))
netWeight = netWeight.Replace(".0", "");
var dic = new Dictionary<string, string>
{
{ "$1153", $"\"{variety.Lot}\"" },
{ "1670dtex -144F", $"\"{tray.DtexFila}\"" },
{ "1500D - 144F", $"\"{tray.DenFila}\"" },
{ "$SA", $"\"{tray.Grade}\"" },
{ "$900", $"\"{tray.NetWeight:0.0}\"" },
{ "$900", $"\"{netWeight}\"" },
{ "25-01-01", $"\"{DateTime.Now:yy-MM-dd}\"" },
{ "$90", $"\"{variety.TotalCount}\"" },
{ "$965", $"\"{tray.GrossWeight}\"" },

View File

@ -14,24 +14,24 @@ public class LabelResult
public string ERP_UOM { get; set; } = "";
public string MFG_DATE { get; set; } = "";
public decimal NET_WEIGHT { get; set; } = 0;
public double GROSS_WEIGHT { get; set; } = 0;
public decimal GROSS_WEIGHT { get; set; } = 0;
public string MFG_LINE { get; set; } = "";
public string GRADE { get; set; } = "";
public string LOT { get; set; } = "";
public string BOX_NO { get; set; } = "";
public string DENIER { get; set; } = "";
public string FILA { get; set; } = "";
// public string DENIER { get; set; } = "";
// public string FILA { get; set; } = "";
public string CUSTOMER_NAME { get; set; } = "";
public string REMARKS { get; set; } = "";
public string TRI_INTERFACE_YN { get; set; } = "";
// public string REMARKS { get; set; } = "";
// public string TRI_INTERFACE_YN { get; set; } = "";
public string TRI_TYPE { get; set; } = "zp10";
public string COMMON_S1 { get; set; } = "";
public string COMMON_S2 { get; set; } = "";
public string COMMON_S3 { get; set; } = "";
public string COMMON_S4 { get; set; } = "";
public string COMMON_S5 { get; set; } = "";
public string COMMON_N1 { get; set; } = "";
public string TRI_YN { get; set; } = "";
//public string COMMON_S1 { get; set; } = "";
//public string COMMON_S2 { get; set; } = "";
//public string COMMON_S3 { get; set; } = "";
//public string COMMON_S4 { get; set; } = "";
//public string COMMON_S5 { get; set; } = "";
//public string COMMON_N1 { get; set; } = "";
//public string TRI_YN { get; set; } = "";
public string CREATED_BY { get; set; } = "seyounth";
public string CREATED_ON { get; set; } = DateTime.Now.ToString("yyyy-MM-dd");
public string MODIFIED_BY { get; set; } = "seyounth";
@ -45,7 +45,7 @@ public class LabelResult
ITEM_CODE = variety.Code;
MFG_DATE = DateTime.Now.ToString("yyyy-MM-dd");
NET_WEIGHT = (decimal)tray.NetWeight;
GROSS_WEIGHT = tray.GrossWeight;
GROSS_WEIGHT = (decimal)tray.GrossWeight;
GRADE = tray.Grade ?? "";
LOT = variety.Lot.ToString();
BOX_NO = tray.ControlNo?.ToString() ?? "";

View File

@ -89,17 +89,21 @@ public class HyosungWmsService : IHyosungWmsService
public async Task AddLabelResult(LabelResult result)
{
var mst_item = await _db.Queryable<MST_ITEM>()
.FirstAsync(t => t.BE_ID == "2240"
&& t.ITEM_CODE == result.ITEM_CODE
&& t.ITEM_CODE_TYPE == "FERT");
result.COMMON_S1 = mst_item.COMMON_S1;
result.COMMON_S3 = mst_item.COMMON_S3;
result.COMMON_S5 = mst_item.COMMON_S5;
result.WMS_UOM = mst_item.WMS_UOM_ID;
result.ERP_UOM = mst_item.ERP_UOM_ID;
var workCenter = await _db.Queryable<MST_ITEM_VERSION>()
.FirstAsync(v => v.ITEM_CODE == result.ITEM_CODE);
await _db.Insertable(result).ExecuteCommandAsync();
try
{
var mst_item = await _db.Queryable<MST_ITEM>()
.FirstAsync(t => t.BE_ID == "2240"
&& t.ITEM_CODE == result.ITEM_CODE
&& t.ITEM_CODE_TYPE == "FERT");
result.WMS_UOM = mst_item.WMS_UOM_ID;
result.ERP_UOM = mst_item.ERP_UOM_ID;
var workCenter = await _db.Queryable<MST_ITEM_VERSION>()
.FirstAsync(v => v.ITEM_CODE == result.ITEM_CODE);
await _db.Insertable(result).ExecuteCommandAsync();
}catch(Exception e)
{
}
}
}

View File

@ -86,13 +86,17 @@ public class TrayService : ITrayService
tray.NetWeight = itemInfo.NET_WEIGHT;
tray.GrossWeight = itemInfo.GROSS_WEIGHT;
tray.Barcode =
$"{itemInfo.ITEM_CODE} {DateTime.Now:yyMMdd}00{controlNo.ToString().PadLeft(4, '0')}{itemInfo.LOTNO.PadLeft(4, '0')}0";
$"{itemInfo.ITEM_CODE} {DateTime.Now:yyMMdd}00{itemInfo.LOTNO.PadLeft(4, '0')}{controlNo.ToString().PadLeft(4, '0')}0";
await _repository.UpdateAsync(tray.ToEntity());
_cache.Remove(tray.TrayCode, out _);
return tray;
}
public async Task StorageAsync(string trayCode)
public async Task StorageAsync(string trayCode)
{
var tray = await _repository.GetFirstAsync(d => d.TrayCode == trayCode);
tray.FinishTime = DateTime.Now;
await _repository.UpdateAsync(tray);
_cache.TryRemove(tray.TrayCode, out _);
}
}

View File

@ -297,8 +297,12 @@ public class HyosungRuntime(
var mod = await hyosungWmsService.GetItemInfoByItemCode(variety.Code);
var grade = "1";
if (mod.GRADE != "AA") grade = mod.GRADE;
var controlNo = await hyosungWmsService.GetControlNo(variety, grade);
tray = await trayService.PrintTrayAsync(trayCode, height, controlNo, mod);
int controlNo = 0;
if(tray.ControlNo is null || tray.ControlNo == 0)
{
controlNo = await hyosungWmsService.GetControlNo(variety, grade);
tray = await trayService.PrintTrayAsync(trayCode, height, controlNo, mod);
}
if (arg1 == 1)
{
await printer.PrintAsync(1, trayCode);
@ -308,11 +312,12 @@ public class HyosungRuntime(
{
await printer.PrintAsync(2, trayCode);
await hyosungPlcService.WritePrintLabelResultAsync(arg1, variety.MasterLabelCount, true);
await hyosungWmsService.UpdateControlNo(variety, controlNo);
await hyosungWmsService.AddLabelResult(new LabelResult(tray, variety));
}
await hyosungWmsService.UpdateControlNo(variety, controlNo);
await hyosungWmsService.AddLabelResult(new LabelResult(tray, variety));
logger.LogInformation($"plc request print label success");
}
catch (Exception e)