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); } } }