Files
kunshan-bzfm-mes-backend/DOAN.Service/MES/Product/ProWorkorderService.cs

261 lines
8.2 KiB
C#
Raw Normal View History

using DOAN.Model.MES.base_;
using DOAN.Model.MES.base_.Dto;
2024-12-03 14:35:59 +08:00
using DOAN.Model.MES.product;
using DOAN.Model.MES.product.Dto;
using DOAN.Service.MES.product.IService;
using Infrastructure;
using Infrastructure.Attribute;
2024-12-03 14:35:59 +08:00
using Microsoft.AspNetCore.Http;
namespace DOAN.Service.MES.product
{
/// <summary>
/// 生产工单Service业务层处理
/// </summary>
[AppService(ServiceType = typeof(IProWorkorderService), ServiceLifetime = LifeTime.Transient)]
public class ProWorkorderService : BaseService<ProWorkorder>, IProWorkorderService
{
private readonly IProWorkorderCoreService _coreService;
private readonly IProWorkorderQueryService _queryService;
private readonly IProWorkorderImportService _importService;
private readonly IProWorkorderExportService _exportService;
private readonly IProWorkorderUtilityService _utilityService;
private readonly IProWorkorderReferenceService _referenceService;
/// <summary>
/// 构造函数
/// </summary>
/// <param name="coreService"></param>
/// <param name="queryService"></param>
/// <param name="importService"></param>
/// <param name="exportService"></param>
/// <param name="utilityService"></param>
/// <param name="referenceService"></param>
public ProWorkorderService(
IProWorkorderCoreService coreService,
IProWorkorderQueryService queryService,
IProWorkorderImportService importService,
IProWorkorderExportService exportService,
IProWorkorderUtilityService utilityService,
IProWorkorderReferenceService referenceService
)
{
_coreService = coreService;
_queryService = queryService;
_importService = importService;
_exportService = exportService;
_utilityService = utilityService;
_referenceService = referenceService;
}
2024-12-03 14:35:59 +08:00
/// <summary>
/// 查询生产工单列表
/// </summary>
/// <param name="parm"></param>
/// <returns></returns>
public PagedInfo<ProWorkorderDto3> GetList(ProWorkorderQueryDto parm)
{
return _queryService.GetList(parm);
2024-12-03 14:35:59 +08:00
}
/// <summary>
/// 获取工单无校验
/// </summary>
/// <param name="parm"></param>
/// <returns></returns>
public PagedInfo<ProWorkorderDto> GetList_NOCheck(ProWorkorderQueryDto parm)
{
return _queryService.GetList_NOCheck(parm);
2024-12-03 14:35:59 +08:00
}
/// <summary>
/// 获取详情
/// </summary>
/// <param name="Id"></param>
/// <returns></returns>
public ProWorkorder GetInfo(string Id)
{
return _queryService.GetInfo(Id);
2024-12-03 14:35:59 +08:00
}
/// <summary>
/// 添加生产工单
/// </summary>
/// <param name="model"></param>
/// <returns></returns>
public ProWorkorder AddProWorkorder(ProWorkorder model)
{
return _coreService.AddProWorkorder(model);
2024-12-03 14:35:59 +08:00
}
/// <summary>
/// 修改生产工单
/// </summary>
/// <param name="model"></param>
/// <returns></returns>
public int UpdateProWorkorder(ProWorkorder model)
{
return _coreService.UpdateProWorkorder(model);
2024-12-03 14:35:59 +08:00
}
/// <summary>
/// 插入工单、新增工单
2024-12-03 14:35:59 +08:00
/// </summary>
/// <param name="proWorkorder"></param>
/// <param name="next_id"></param>
2024-12-03 14:35:59 +08:00
/// <returns></returns>
public int Insert_workOrder(ProWorkorder proWorkorder, string next_id)
2024-12-03 14:35:59 +08:00
{
return _coreService.Insert_workOrder(proWorkorder, next_id);
2024-12-03 14:35:59 +08:00
}
/// <summary>
/// 生成工单号
2024-12-03 14:35:59 +08:00
/// </summary>
/// <param name="parm"></param>
2024-12-03 14:35:59 +08:00
/// <returns></returns>
public int Generate_workorder(ProWorkorderQueryDto2 parm)
2024-12-03 14:35:59 +08:00
{
return _utilityService.Generate_workorder(parm);
2024-12-03 14:35:59 +08:00
}
/// <summary>
/// 移动工单移动工单
/// </summary>
/// <param name="id"></param>
/// <param name="type"></param>
/// <returns></returns>
public int MoveWorkorder(string id, int type)
{
return _utilityService.MoveWorkorder(id, type);
2024-12-03 14:35:59 +08:00
}
/// <summary>
/// 导入工单 必须整删除 整改
/// </summary>
/// <param name="formFile"></param>
/// <returns></returns>
public int ImportData(IFormFile formFile, string username)
{
return _importService.ImportData(formFile, username);
2024-12-03 14:35:59 +08:00
}
/// <summary>
/// 分批导入,追加导入
/// </summary>
/// <param name="formFile"></param>
/// <param name="username"></param>
/// <returns></returns>
public int ImportDataAppend(IFormFile formFile, string username)
{
return _importService.ImportDataAppend(formFile, username);
2024-12-03 14:35:59 +08:00
}
/// <summary>
/// 工单导出
/// </summary>
/// <param name="exportTime"></param>
/// <param name="pager"></param>
/// <returns></returns>
public List<ProWorkorder> WorkOrderExport(DateTime exportTime)
2024-12-03 14:35:59 +08:00
{
return _exportService.WorkOrderExport(exportTime);
2024-12-03 14:35:59 +08:00
}
/// <summary>
/// 获取物料信息
/// </summary>
/// <param name="query"></param>
/// <returns></returns>
public List<BaseMaterialList> GetMaterialInfo(BaseMaterialListQueryDto5 parm)
{
return _referenceService.GetMaterialInfo(parm);
2024-12-03 14:35:59 +08:00
}
/// <summary>
/// 获取客户信息
/// </summary>
/// <param name="parm"></param>
/// <returns></returns>
public List<BaseCustom> GetCustomInfo(BaseCustomQueryDto2 parm)
{
return _referenceService.GetCustomInfo(parm);
2024-12-03 14:35:59 +08:00
}
public List<BaseWorkRoute> GetProcessRoute(DateTime dateTime)
{
return _referenceService.GetProcessRoute(dateTime);
2024-12-03 14:35:59 +08:00
}
/// <summary>
/// 获取全部工艺路线
2024-12-03 14:35:59 +08:00
/// </summary>
/// <returns></returns>
public List<BaseWorkRoute> GetAllRoute()
{
return _referenceService.GetAllRoute();
2024-12-03 14:35:59 +08:00
}
/// <summary>
/// 获取组
2024-12-03 14:35:59 +08:00
/// </summary>
/// <returns></returns>
public List<BaseGroup> GetGroupList()
{
return _referenceService.GetGroupList();
2024-12-03 14:35:59 +08:00
}
/// <summary>
/// 查询BOM 及其所需数量
/// </summary>
/// <param name="workorder_num"></param>
/// <returns></returns>
public List<WorkOrderBom> SearchBOMNum(string workorder_num)
{
return _utilityService.SearchBOMNum(workorder_num);
2024-12-03 14:35:59 +08:00
}
/// <summary>
/// 工单日志
/// </summary>
/// <param name="workorder"></param>
/// <param name="log"></param>
/// <param name="Operator"></param>
2024-12-03 14:35:59 +08:00
/// <returns></returns>
public List<ProWorkorderUpdateLog> WorkOrderLog(string workorder)
2024-12-03 14:35:59 +08:00
{
return _utilityService.WorkOrderLog(workorder);
2024-12-03 14:35:59 +08:00
}
/// <summary>
/// 导出PDF
2024-12-03 14:35:59 +08:00
/// </summary>
/// <param name="workorderArray"></param>
2024-12-03 14:35:59 +08:00
/// <returns></returns>
public Task<(string, Stream)> ExportPDFByQuestPDFDemo(string[] workorderArray)
2024-12-03 14:35:59 +08:00
{
return _utilityService.ExportPDFByQuestPDFDemo(workorderArray);
2024-12-03 14:35:59 +08:00
}
2024-12-16 13:46:46 +08:00
/// <summary>
/// 打印工单
/// </summary>
/// <param name="param"></param>
2024-12-16 13:46:46 +08:00
/// <returns></returns>
public Task<CustomException> PrintTicketsByTemplate(ProWorkorderExportDto param)
2024-12-11 17:24:15 +08:00
{
return _utilityService.PrintTicketsByTemplate(param);
2024-12-11 17:24:15 +08:00
}
2025-04-10 13:42:12 +08:00
/// <summary>
/// 获取工单进度跟踪列表
2025-04-10 13:42:12 +08:00
/// </summary>
/// <param name="query"></param>
2025-04-10 13:42:12 +08:00
/// <returns></returns>
public PagedInfo<ProWorkorderTranceProgressDto> GetWorkorderTraceProgressList(ProWorkorderQueryDto query)
2025-04-10 13:42:12 +08:00
{
return _queryService.GetWorkorderTraceProgressList(query);
2025-04-10 13:42:12 +08:00
}
2024-12-03 14:35:59 +08:00
}
}