using Microsoft.AspNetCore.Mvc; using DOAN.Model.Bydlms.Dto; using DOAN.Model.Bydlms; using DOAN.Service.Bydlms.IBydlmsService; using DOAN.Admin.WebApi.Filters; using Azure; //创建时间:2025-02-19 namespace DOAN.Admin.WebApi.Controllers.Bydlms { /// /// 生产工单 /// [Route("bydlms/BydWorkorder")] public class BydWorkorderController : BaseController { /// /// 生产工单接口 /// private readonly IBydWorkorderService _BydWorkorderService; public BydWorkorderController(IBydWorkorderService BydWorkorderService) { _BydWorkorderService = BydWorkorderService; } /// /// BYD-MES传入生产工单 /// /// [HttpPost("accept_BYD_MES_wrokorder_list")] [AllowAnonymousAttribute] [Log(Title = "BYD-MES传入生产工单", BusinessType = BusinessType.INSERT)] public IActionResult BatchAddBydWorkorder([FromBody] QueryParam parm) { try { var modalList = parm.Data.Adapt>(); var response = _BydWorkorderService.AddBydWorkorderList(modalList,parm.LineCode); Dictionary result = new Dictionary(); if (response) { result.Add("code", "000000"); result.Add("mesg", "操作成功"); return Ok(result); // 返回成功的响应 } else { result.Add("code", "999999"); result.Add("mesg", "传入数据为空"); return BadRequest(result); // 返回失败的响应 } } catch (Exception ex) { Dictionary errorResult = new Dictionary { { "code", "999999" }, { "mesg", ex.Message } }; return StatusCode(500, errorResult); // 返回异常响应 } } /// /// 查询生产工单列表 /// /// /// [Verify] [HttpGet("list")] [ActionPermissionFilter(Permission = "bydworkorder:list")] public IActionResult QueryBydWorkorder([FromQuery] BydWorkorderQueryDto parm) { var response = _BydWorkorderService.GetList(parm); return SUCCESS(response); } /// /// 查询生产工单详情 /// /// /// [HttpGet("{Id}")] [ActionPermissionFilter(Permission = "bydworkorder:query")] [Verify] public IActionResult GetBydWorkorder(string Id) { var response = _BydWorkorderService.GetInfo(Id); var info = response.Adapt(); return SUCCESS(info); } /// /// 添加生产工单 /// /// [HttpPost] [ActionPermissionFilter(Permission = "bydworkorder:add")] [Log(Title = "生产工单", BusinessType = BusinessType.INSERT)] [Verify] public IActionResult AddBydWorkorder([FromBody] BydWorkorderDto parm) { var modal = parm.Adapt().ToCreate(HttpContext); var response = _BydWorkorderService.AddBydWorkorder(modal); return SUCCESS(response); } /// /// 更新生产工单 /// /// [HttpPut] [ActionPermissionFilter(Permission = "bydworkorder:edit")] [Log(Title = "生产工单", BusinessType = BusinessType.UPDATE)] [Verify] public IActionResult UpdateBydWorkorder([FromBody] BydWorkorderDto parm) { var modal = parm.Adapt().ToUpdate(HttpContext); var response = _BydWorkorderService.UpdateBydWorkorder(modal); return ToResponse(response); } /// /// 删除生产工单 /// /// [HttpPost("delete/{ids}")] [ActionPermissionFilter(Permission = "bydworkorder:delete")] [Log(Title = "生产工单", BusinessType = BusinessType.DELETE)] [Verify] public IActionResult DeleteBydWorkorder([FromRoute]string ids) { var idArr = Tools.SplitAndConvert(ids); return ToResponse(_BydWorkorderService.Delete(idArr)); } /// /// 上移 /// /// /// [HttpGet("move_up")] public IActionResult MOVEUP(string OrderCode) { var response = _BydWorkorderService.MOVEUP(OrderCode); return SUCCESS(response); } /// /// 下移 /// /// /// [HttpGet("move_down")] public IActionResult MOVEDOWN(string OrderCode) { var response = _BydWorkorderService.MOVEDOWN(OrderCode); return SUCCESS(response); } //TODO 产线获取当前生产工单和下一个工单 //bydlms/BydWorkorderget_workorder_producting?line_code="" [HttpGet("get_workorder_producting")] public IActionResult GetWorkOrderProducting(string line_code) { var response = _BydWorkorderService.GetWorkOrderProducting(line_code); return SUCCESS(response); } } }