using Microsoft.AspNetCore.Mvc; using DOAN.Admin.WebApi.Filters; using Infrastructure.Controllers; using DOAN.ServiceCore.Middleware; using Mapster; using Infrastructure.Enums; using Infrastructure; using Infrastructure.Attribute; using DOAN.Common; using Infrastructure.Model; using MDM.Services.IProcessService; using MDM.Model.Process.Dto; using MDM.Model.Process; using MDM.Services.Process; //创建时间:2025-11-15 namespace MDM.Controllers.Process { /// /// 工序 /// [Verify] [Route("MasterDataManagement/Process/ProcessOperation")] public class ProcessOperationController : BaseController { /// /// 工序接口 /// private readonly IProcessOperationService _ProcessOperationService; public ProcessOperationController(IProcessOperationService ProcessOperationService) { _ProcessOperationService = ProcessOperationService; } /// /// 查询工序列表 /// /// /// [HttpGet("list")] [ActionPermissionFilter(Permission = "business:processoperation:list")] public IActionResult QueryProcessOperation([FromQuery] ProcessOperationQueryDto parm) { var response = _ProcessOperationService.GetList(parm); return SUCCESS(response); } /// /// 查询工序详情 /// /// /// [HttpGet("{OperationId}")] [ActionPermissionFilter(Permission = "business:processoperation:query")] public IActionResult GetProcessOperation(int OperationId) { var response = _ProcessOperationService.GetInfo(OperationId); var info = response.Adapt(); return SUCCESS(info); } /// /// 添加工序 /// /// [HttpPost] [ActionPermissionFilter(Permission = "business:processoperation:add")] [Log(Title = "工序", BusinessType = BusinessType.INSERT)] public IActionResult AddProcessOperation([FromBody] ProcessOperationDto parm) { var modal = parm.Adapt().ToCreate(HttpContext); var response = _ProcessOperationService.AddProcessOperation(modal); return SUCCESS(response); } /// /// 更新工序 /// /// [HttpPut] [ActionPermissionFilter(Permission = "business:processoperation:edit")] [Log(Title = "工序", BusinessType = BusinessType.UPDATE)] public IActionResult UpdateProcessOperation([FromBody] ProcessOperationDto parm) { var modal = parm.Adapt().ToUpdate(HttpContext); var response = _ProcessOperationService.UpdateProcessOperation(modal); return ToResponse(response); } /// /// 删除工序 /// /// [HttpDelete("{ids}")] [ActionPermissionFilter(Permission = "business:processoperation:delete")] [Log(Title = "工序", BusinessType = BusinessType.DELETE)] public IActionResult DeleteProcessOperation(string ids) { int[] idsArr = Tools.SpitIntArrary(ids); if (idsArr.Length <= 0) { return ToResponse(ApiResult.Error($"删除失败Id 不能为空")); } var response = _ProcessOperationService.Delete(idsArr); return ToResponse(response); } //TODO 控制策略字典查询 /// /// 控制策略字典查询 /// /// /// [HttpGet("search_controlstrategy_dict")] public IActionResult SearchControlstrategyDict([FromQuery] ProcessControlStrategyDictQueryDto parm) { var response = _ProcessOperationService.SearchControlstrategyDict(parm); return SUCCESS(response); } //TODO 工序流转字典 /// /// 工序流转字典 /// /// /// [HttpGet("search_OprerationTransitionDict")] public IActionResult QueryProcessOprerationTransitionDict([FromQuery] ProcessOprerationTransitionDictQueryDto parm) { var response = _ProcessOperationService.QueryProcessOprerationTransitionDict(parm); return SUCCESS(response); } } }