using Microsoft.AspNetCore.Mvc;
using ZR.Admin.WebApi.Extensions;
using ZR.Model.Dto;
using ZR.Service.Business.IBusinessService;
//创建时间:2025-01-02
namespace ZR.Admin.WebApi.Controllers
{
///
/// 质量BackEnd业务模块
///
[Route("/mes/qc/BackEnd/QcBackEndController")]
public class QcBackEndController : BaseController
{
///
/// 质量BackEnd业务模块接口
///
private readonly IQcBackEndService _QcBackEndService;
public QcBackEndController(IQcBackEndService QcBackEndService)
{
_QcBackEndService = QcBackEndService;
}
///
/// 获取班组下拉
///
///
[HttpGet("GetGroupOptions")]
[AllowAnonymous]
public IActionResult GetGroupOptions()
{
var response = _QcBackEndService.GetGroupOptions();
return SUCCESS(response);
}
///
/// 获取站点下拉
///
///
[HttpGet("GetStieOptions")]
[AllowAnonymous]
public IActionResult GetStieOptions()
{
var response = _QcBackEndService.GetStieOptions();
return SUCCESS(response);
}
///
/// 获取缺陷项初始数据
///
///
[HttpGet("GetDefectInitOptions")]
[AllowAnonymous]
public IActionResult GetDefectInitOptions()
{
var response = _QcBackEndService.GetDefectInitOptions();
return SUCCESS(response);
}
///
/// 获取缺陷项列表初始数据
///
///
[HttpGet("GetDefectTableOptions")]
[AllowAnonymous]
public IActionResult GetDefectTableOptions()
{
var response = _QcBackEndService.GetDefectTableOptions();
return SUCCESS(response);
}
///
/// 解析标签
///
/// 标签内容
/// 解析方式
///
[HttpGet("AnalyzeLabel")]
[AllowAnonymous]
public IActionResult AnalyzeLabel(string label, int type)
{
var response = _QcBackEndService.AnalyzeLabelToDto(label, type);
return SUCCESS(response);
}
///
/// 开始工单
///
///
[HttpPost("StartBackEndWorkOrder")]
[AllowAnonymous]
public IActionResult StartBackEndWorkOrder([FromBody] QcBackEndWorkorderDetailDto parm)
{
try
{
var modal = parm.Adapt().ToCreate(HttpContext);
var response = _QcBackEndService.StartBackEndWorkOrder(modal);
return SUCCESS(response);
}
catch (Exception e)
{
return ToResponse(new ApiResult(500, "开启工单异常:" + e.Message));
}
}
///
/// 修改缺陷项
///
///
[HttpPost("ChangeWorkOrderDefect")]
[AllowAnonymous]
public IActionResult StartBackEndWorkOrder([FromBody] QcBackEndWorkorderDefectDto parm)
{
var modal = parm.Adapt().ToCreate(HttpContext);
var response = _QcBackEndService.ChangeWorkOrderDefect(modal);
return SUCCESS(response);
}
///
/// 获取工单缺陷项
///
///
[HttpGet("GetWorkOrderDefectList")]
[AllowAnonymous]
public IActionResult GetWorkOrderDefectList(string workOrder)
{
var response = _QcBackEndService.GetWorkOrderDefectList(workOrder);
return SUCCESS(response);
}
///
/// 扫描内标签,添加标签记录
///
///
[HttpPost("ScanInnerLabel")]
[AllowAnonymous]
public IActionResult ScanInnerLabel([FromBody] QcBackEndLabelScanDto parm)
{
try
{
var modal = parm.Adapt().ToCreate(HttpContext);
var response = _QcBackEndService.ScanInnerLabel(modal);
return SUCCESS(response);
}
catch (Exception ex)
{
return SUCCESS("请刷新页面,错误代码:" + ex.Message);
}
}
///
/// 扫描外箱标签,添加想标签记录
///
///
[HttpPost("ScanPackageLabel")]
[AllowAnonymous]
public IActionResult ScanPackageLabel([FromBody] QcBackEndLabelScanDto parm)
{
try
{
var modal = parm.Adapt().ToCreate(HttpContext);
var response = _QcBackEndService.ScanPackageLabel(modal);
return SUCCESS(response);
}
catch (Exception ex)
{
return SUCCESS("请刷新页面,错误代码:" + ex.Message);
}
}
///
/// 判断是否要扫描箱标签
///
///
[HttpGet("CheckPackageIsFullAndNeedScanPackageLabel")]
[AllowAnonymous]
public IActionResult CheckPackageIsFullAndNeedScanPackageLabel(string workorder)
{
try
{
var response = _QcBackEndService.CheckPackageIsFullAndNeedScanPackageLabel(workorder);
return SUCCESS(response);
}
catch (Exception ex)
{
return SUCCESS("检查是否要扫描箱标签功能异常:" + ex.Message);
}
}
///
/// 结束工单,并生成质量报表
///
///
[HttpGet("EndBackEndWorkOrderAndCreateStatistics")]
[AllowAnonymous]
public IActionResult EndBackEndWorkOrderAndCreateStatistics(string workOrder)
{
var response = _QcBackEndService.EndBackEndWorkOrderAndCreateStatistics(workOrder);
return SUCCESS(response);
}
///
/// 更新工单相关信息
///
///
[HttpGet("UpdateWorkOrderDetail")]
[AllowAnonymous]
public IActionResult UpdateWorkOrderDetail(string workOrder)
{
var response = _QcBackEndService.UpdateWorkOrderDetail(workOrder);
return SUCCESS(response);
}
///
/// 自动生成标签记录
///
///
[HttpPost("GenerateVirtualLabel")]
[AllowAnonymous]
public IActionResult GenerateVirtualLabel([FromBody] QcBackEndWorkorderDetailDto parm)
{
try
{
var modal = parm.Adapt().ToCreate(HttpContext);
var response = _QcBackEndService.GenerateVirtualLabel(modal);
return SUCCESS(response);
}
catch (Exception ex)
{
return ToResponse(ApiResult.Error(ex.Message));
}
}
///
/// 打印特殊包装标签
///
///
[HttpPost("PrintSpecialPacakgeLabel")]
[AllowAnonymous]
public IActionResult PrintSpecialPacakgeLabel([FromBody] QcBackEndWorkorderDetailDto parm, int specialPrintType,
int packageNum)
{
try
{
var modal = parm.Adapt().ToCreate(HttpContext);
var response = _QcBackEndService.PrintSpecialPacakgeLabel(modal, specialPrintType, packageNum);
return SUCCESS(response);
}
catch (Exception ex)
{
return ToResponse(ApiResult.Error(ex.Message));
}
}
///
/// 工单标签信息查询
///
///
[HttpGet("SearchWorkOrderLabelDetail")]
[AllowAnonymous]
public IActionResult SearchWorkOrderLabelDetail(string workOrder)
{
try
{
var response = _QcBackEndService.SearchWorkOrderLabelDetail(workOrder);
return SUCCESS(response);
}
catch (Exception ex)
{
return ToResponse(ApiResult.Error(ex.Message));
}
}
}
}