后道打标签优化以及标签追溯修改
This commit is contained in:
@@ -1092,19 +1092,32 @@ namespace ZR.Service.Business
|
||||
{
|
||||
batchCode = DateTime.Now.ToString("yyMMdd") + "000";
|
||||
}
|
||||
// 提取箱流水号
|
||||
|
||||
int packageSort = 1;
|
||||
QcBackendRecordLabelPrint labelPrintRecord = Context
|
||||
.Queryable<QcBackendRecordLabelPrint>()
|
||||
.Where(it => it.PartNumber == newLabelScran.PartNumber)
|
||||
.Where(it => it.BatchCode.Contains(batchCode))
|
||||
.Where(it => it.LabelType == 1)
|
||||
.OrderByDescending(it => it.SerialNumber)
|
||||
.First();
|
||||
if (labelPrintRecord != null)
|
||||
|
||||
// 使用SqlSugar的事务处理
|
||||
Context.Ado.BeginTran();
|
||||
try
|
||||
{
|
||||
packageSort = labelPrintRecord.SerialNumber + 1 ?? 1;
|
||||
// 查询最新流水号
|
||||
QcBackendRecordLabelPrint labelPrintRecord = Context
|
||||
.Queryable<QcBackendRecordLabelPrint>()
|
||||
.Where(it => it.PartNumber == newLabelScran.PartNumber)
|
||||
.Where(it => it.BatchCode.Contains(batchCode))
|
||||
.Where(it => it.LabelType == 1)
|
||||
.OrderByDescending(it => it.SerialNumber)
|
||||
.First();
|
||||
|
||||
packageSort = labelPrintRecord?.SerialNumber + 1 ?? 1;
|
||||
|
||||
Context.Ado.CommitTran();
|
||||
}
|
||||
catch (Exception)
|
||||
{
|
||||
Context.Ado.RollbackTran();
|
||||
throw;
|
||||
}
|
||||
|
||||
// 提取产品描述
|
||||
string checkPartnumber = newLabelScran.PartNumber;
|
||||
// 使用正则表达式匹配并移除特殊后缀
|
||||
@@ -1114,25 +1127,32 @@ namespace ZR.Service.Business
|
||||
"",
|
||||
RegexOptions.IgnoreCase
|
||||
);
|
||||
|
||||
WmMaterial material = Context
|
||||
.Queryable<WmMaterial>()
|
||||
.Where(it => it.Partnumber == processedPartnumber)
|
||||
.Where(it => it.Type == 1)
|
||||
.Where(it => it.Status == 1)
|
||||
.First();
|
||||
|
||||
if (material == null)
|
||||
{
|
||||
throw new Exception("生成打印后道外箱标签的信息:此零件号不在物料清单内!" + processedPartnumber);
|
||||
}
|
||||
|
||||
// 生成工单号
|
||||
string workOrder = $"{batchCode}_{packageSort}";
|
||||
|
||||
// 是否满箱 0-不满 1-满箱
|
||||
int isFull = specialPrintType == 2 ? 0 : 1;
|
||||
// 是否补打 0-非补打 1-补打
|
||||
int isAgain = specialPrintType == 1 ? 1 : 0;
|
||||
|
||||
string newLabelCode =
|
||||
$"Code=PGW{workOrder}^ItemNumber={newLabelScran.PartNumber}^Order=W{workOrder}^Qty={maxPackage}^LabelType=1^LabelBy=HD^Team={newLabelScran.Team}^IsFull={isFull}^IsAgain={isAgain}";
|
||||
|
||||
string newPackageCode = $"BOX:PGW{workOrder}{newLabelScran.Team}1";
|
||||
|
||||
QcBackEndPrintMqttEventDto mqttEventDto =
|
||||
new()
|
||||
{
|
||||
@@ -1154,6 +1174,7 @@ namespace ZR.Service.Business
|
||||
LabelType = 1,
|
||||
CreatedTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")
|
||||
};
|
||||
|
||||
return mqttEventDto;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user