using DOAN.Model;
using DOAN.Model.Dto;
using DOAN.Model.MES.trace.Dto;
using DOAN.Service.Business.IBusinessService;
using Microsoft.AspNetCore.Mvc;
//创建时间:2025-09-02
namespace DOAN.Admin.WebApi.Controllers
{
///
/// 追溯日志,错误日志,警告日志,调试日志
///
[Route("mes/trace/traceMain/v1")]
public class TraceMainController : BaseController
{
///
/// 追溯日志,错误日志,警告日志,调试日志接口
///
private readonly ITraceMainService _TraceMainService;
public TraceMainController(ITraceMainService TraceMainService)
{
_TraceMainService = TraceMainService;
}
///
/// 获取产品追溯信息列表
///
///
///
[HttpPost("getPartSnList")]
[AllowAnonymous]
public IActionResult GetPartSnList([FromBody] TracePartSnQueryDto query)
{
var response = _TraceMainService.GetPartSnList(query);
return SUCCESS(response);
}
///
/// 获取子零件
///
///
///
[HttpPost("getSnSubScanList")]
[AllowAnonymous]
public IActionResult GetSnSubScanList([FromBody] TraceSnSubScanQueryDto query)
{
var response = _TraceMainService.GetSnSubScanList(query);
return SUCCESS(response);
}
///
/// 获取检测平台(折叠:zd/终检:eol)
///
///
///
[HttpPost("getSnQcRecordList")]
[AllowAnonymous]
public IActionResult GetSnQcRecordList([FromBody] TraceSnQcRecordQueryDto query) {
var response = _TraceMainService.GetSnQcRecordList(query);
return SUCCESS(response);
}
///
/// 获取配置
///
/// 配置获取方式
///
[HttpPost("GetConfig")]
[AllowAnonymous]
public IActionResult GetConfig([FromBody] DeviceDownLoadTraceConfigQueryDto parm)
{
var response = _TraceMainService.GetConfig(parm);
return SUCCESS(response);
}
///
/// 1.追溯码是否存在
///
/// SN追溯码
///
[HttpGet("CheckPartSnIsExist")]
[AllowAnonymous]
public IActionResult CheckPartSnIsExist(string partSn)
{
var response = _TraceMainService.CheckPartSnIsExist(partSn);
return SUCCESS(response);
}
///
/// 2.查看最后一个追溯码
///
/// 项目号
/// 零件号
///
[HttpGet("GetLastPartSn")]
[AllowAnonymous]
public IActionResult GetLastPartSn(string projectCode, string productionCode)
{
var response = _TraceMainService.GetLastPartSn(projectCode, productionCode);
return SUCCESS(response);
}
///
/// 3.插入追溯码
///
/// 项目号
/// 零件号
/// 追溯码
///
[HttpGet("AddPartSn")]
[AllowAnonymous]
public IActionResult AddPartSn(string projectCode, string productionCode,string partSn)
{
var response = _TraceMainService.AddPartSn(projectCode, productionCode, partSn);
return SUCCESS(response);
}
///
/// 上传追溯码与检测结果信息
///
/// 配置获取方式
///
[HttpPost("UploadPartSnAndZdDecord")]
[AllowAnonymous]
public IActionResult UploadPartSnAndZdDecord([FromBody] TraceSnQcRecord parm)
{
var response = _TraceMainService.UploadPartSnAndZdDecord(parm);
return SUCCESS(response);
}
///
/// 添加追溯码过站信息
///
/// 配置获取方式
///
[HttpPost("AddTraceSnTransit")]
[AllowAnonymous]
public IActionResult AddTraceSnTransit([FromBody] TraceSnTransit parm)
{
var response = _TraceMainService.AddTraceSnTransit(parm);
return SUCCESS(response);
}
///
/// 检查追溯码是否过站
///
/// 追溯码过站名称
///
[HttpGet("CheckIsTransit")]
[AllowAnonymous]
public IActionResult CheckIsTransit(string partSn, string TransitName)
{
var response = _TraceMainService.CheckIsTransit(partSn, TransitName);
return SUCCESS(response);
}
///
/// 添加子零件追溯码与产品二维码扫码绑定记录
///
/// 配置获取方式
///
[HttpPost("AddPartSnSubScan")]
[AllowAnonymous]
public IActionResult AddPartSnSubScan([FromBody] TraceSnSubScan scan)
{
var response = _TraceMainService.AddPartSnSubScan(scan);
return SUCCESS(response);
}
}
}