毛坯出入库修改,质量报表生成标签功能添加
This commit is contained in:
@@ -14,7 +14,7 @@ using ZR.Service.mes.qc.IService;
|
||||
namespace ZR.Service.mes.qc
|
||||
{
|
||||
[AppService(ServiceType = typeof(ICommonFQCService), ServiceLifetime = LifeTime.Transient)]
|
||||
public class CommonFQCService : BaseService<FirstFQCService>, ICommonFQCService
|
||||
public class CommonFQCService : BaseService<QCStatisticsService>, ICommonFQCService
|
||||
{
|
||||
public int CheckPackageWorkOrderStatus(string workOrderId)
|
||||
{
|
||||
|
||||
@@ -1,21 +1,36 @@
|
||||
using Infrastructure.Attribute;
|
||||
using SqlSugar;
|
||||
using System;
|
||||
using System;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using System.Text.Json;
|
||||
using System.Threading.Tasks;
|
||||
using Infrastructure.Attribute;
|
||||
using Microsoft.Extensions.Logging;
|
||||
using MQTTnet.Protocol;
|
||||
using SqlSugar;
|
||||
using ZR.Model.MES.pro;
|
||||
using ZR.Model.MES.qc;
|
||||
using ZR.Model.MES.qc.DTO;
|
||||
using ZR.Model.MES.qu;
|
||||
using ZR.Model.MES.wms;
|
||||
using ZR.Service.Business;
|
||||
using ZR.Service.mes.qc.IService;
|
||||
using ZR.Service.mes.wms;
|
||||
using ZR.Service.mqtt;
|
||||
|
||||
namespace ZR.Service.mes.qc
|
||||
{
|
||||
[AppService(ServiceType = typeof(IFirstFQCService), ServiceLifetime = LifeTime.Transient)]
|
||||
public class FirstFQCService : BaseService<QcInspectionitem>, IFirstFQCService
|
||||
{
|
||||
private readonly MqttService _mqttService; // 注入MqttService
|
||||
private readonly ILogger<QcQualityStatisticsFirst> _logger;
|
||||
|
||||
public FirstFQCService(MqttService mqttService, ILogger<QcQualityStatisticsFirst> logger)
|
||||
{
|
||||
_mqttService = mqttService;
|
||||
_logger = logger;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取检测项 (首检)
|
||||
/// </summary>
|
||||
@@ -544,11 +559,11 @@ namespace ZR.Service.mes.qc
|
||||
|
||||
x.AsInsertable.ExecuteCommandAsync(); //执行插入
|
||||
x.AsUpdateable.UpdateColumns(it => new
|
||||
{
|
||||
it.UpdatedBy,
|
||||
it.UpdatedTime,
|
||||
it.Counter
|
||||
})
|
||||
{
|
||||
it.UpdatedBy,
|
||||
it.UpdatedTime,
|
||||
it.Counter
|
||||
})
|
||||
.ExecuteCommandAsync(); //执行更新
|
||||
|
||||
////更新初检报废表
|
||||
@@ -3857,6 +3872,80 @@ namespace ZR.Service.mes.qc
|
||||
|
||||
|
||||
//TODO 20241023 不再变动抛光盘点后的数据
|
||||
|
||||
try
|
||||
{
|
||||
//TODO 20251021 包装完成工单后,发送送货单打印数据
|
||||
string topic = $"shgg_mes/package_print_1/print/1站点";
|
||||
string path1 = "D:\\RIZO\\label\\合格送货单.btw";
|
||||
string path2 = "D:\\RIZO\\label\\抛光送货单.btw";
|
||||
string path3 = "D:\\RIZO\\label\\打磨送货单.btw";
|
||||
PrintDeliveryNoteDto mqttEventDto =
|
||||
new()
|
||||
{
|
||||
Path = path1,
|
||||
SiteNo = "1站点",
|
||||
Name = "包装合格送货单标签打印",
|
||||
PartNumber = first.FinishedPartNumber,
|
||||
Description = first.ProductDescription,
|
||||
Color = first.Color,
|
||||
Specification = "",
|
||||
WorkOrder = first.WorkorderId,
|
||||
PackageCode = first.WorkorderId,
|
||||
Team = first.Team,
|
||||
Sort = 1,
|
||||
ProductionTime = first.WorkorderId,
|
||||
BatchCode = first.WorkorderId,
|
||||
PackageNum = first.QualifiedNumber.Value,
|
||||
LabelCode =
|
||||
$"Type=DeNoHG^ItemNumber={first.FinishedPartNumber}^Order={first.WorkorderId}^Qty={first.QualifiedNumber.Value}",
|
||||
LabelType = 1,
|
||||
CreatedTime = DateTime.Now.ToString()
|
||||
};
|
||||
|
||||
var payload1 = JsonSerializer.Serialize(mqttEventDto);
|
||||
// 保持原有PublishAsync调用方式
|
||||
_mqttService
|
||||
.PublishAsync(
|
||||
topic,
|
||||
payload1,
|
||||
MqttQualityOfServiceLevel.AtLeastOnce,
|
||||
retain: false
|
||||
)
|
||||
.Wait();
|
||||
mqttEventDto.Path = path2;
|
||||
mqttEventDto.Name = "包装抛光送货单标签打印";
|
||||
mqttEventDto.PackageNum = first.PaoguangTotal.Value;
|
||||
mqttEventDto.LabelCode = $"Type=DeNoPG^ItemNumber={first.FinishedPartNumber}^Order={first.WorkorderId}^Qty={first.PaoguangTotal.Value}";
|
||||
var payload2 = JsonSerializer.Serialize(mqttEventDto);
|
||||
_mqttService
|
||||
.PublishAsync(
|
||||
topic,
|
||||
payload2,
|
||||
MqttQualityOfServiceLevel.AtLeastOnce,
|
||||
retain: false
|
||||
)
|
||||
.Wait();
|
||||
mqttEventDto.Path = path3;
|
||||
mqttEventDto.Name = "包装打磨送货单标签打印";
|
||||
mqttEventDto.PackageNum = first.DamoTotal.Value;
|
||||
mqttEventDto.LabelCode = $"Type=DeNoDM^ItemNumber={first.FinishedPartNumber}^Order={first.WorkorderId}^Qty={first.DamoTotal.Value}";
|
||||
var payload3 = JsonSerializer.Serialize(mqttEventDto);
|
||||
_mqttService
|
||||
.PublishAsync(
|
||||
topic,
|
||||
payload3,
|
||||
MqttQualityOfServiceLevel.AtLeastOnce,
|
||||
retain: false
|
||||
)
|
||||
.Wait();
|
||||
}
|
||||
catch (Exception)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
|
||||
return 1;
|
||||
// 产线报表生成后自动化操作
|
||||
|
||||
|
||||
Reference in New Issue
Block a user