using Infrastructure; using Infrastructure.Attribute; using Infrastructure.Enums; using Infrastructure.Model; using Mapster; using Microsoft.AspNetCore.Mvc; using ZR.Model.Dto; using ZR.Model.Models; using ZR.Service.Business.IBusinessService; using ZR.Admin.WebApi.Extensions; using ZR.Admin.WebApi.Filters; using ZR.Common; namespace ZR.Admin.WebApi.Controllers { /// /// 出库管理/装配记录表Controller /// /// @tableName out_assemble_record /// @author admin /// @date 2023-04-14 /// [Verify] [Route("business/OutAssembleRecord")] public class OutAssembleRecordController : BaseController { /// /// 出库管理/装配记录表接口 /// private readonly IOutAssembleRecordService _OutAssembleRecordService; public OutAssembleRecordController(IOutAssembleRecordService OutAssembleRecordService) { _OutAssembleRecordService = OutAssembleRecordService; } /// /// 查询出库管理/装配记录表列表 /// /// /// [HttpGet("list")] [ActionPermissionFilter(Permission = "business:outassemblerecord:list")] public IActionResult QueryOutAssembleRecord([FromQuery] OutAssembleRecordQueryDto parm) { var response = _OutAssembleRecordService.GetList(parm); return SUCCESS(response); } /// /// 查询出库管理/装配记录表详情 /// /// /// [HttpGet("{AssembleId}")] [ActionPermissionFilter(Permission = "business:outassemblerecord:query")] public IActionResult GetOutAssembleRecord(int AssembleId) { var response = _OutAssembleRecordService.GetFirst(x => x.AssembleId == AssembleId); return SUCCESS(response); } /// /// 添加出库管理/装配记录表 /// /// [HttpPost] [ActionPermissionFilter(Permission = "business:outassemblerecord:add")] [Log(Title = "出库管理/装配记录表", BusinessType = BusinessType.INSERT)] public IActionResult AddOutAssembleRecord([FromBody] OutAssembleRecordDto parm) { if (parm == null) { throw new CustomException("请求参数错误"); } var modal = parm.Adapt().ToCreate(HttpContext); var response = _OutAssembleRecordService.AddOutAssembleRecord(modal); return ToResponse(response); } /// /// 更新出库管理/装配记录表 /// /// [HttpPut] [ActionPermissionFilter(Permission = "business:outassemblerecord:edit")] [Log(Title = "出库管理/装配记录表", BusinessType = BusinessType.UPDATE)] public IActionResult UpdateOutAssembleRecord([FromBody] OutAssembleRecordDto parm) { if (parm == null) { throw new CustomException("请求实体不能为空"); } var modal = parm.Adapt().ToUpdate(HttpContext); var response = _OutAssembleRecordService.UpdateOutAssembleRecord(modal); return ToResponse(response); } /// /// 删除出库管理/装配记录表 /// /// [HttpDelete("{ids}")] [ActionPermissionFilter(Permission = "business:outassemblerecord:delete")] [Log(Title = "出库管理/装配记录表", BusinessType = BusinessType.DELETE)] public IActionResult DeleteOutAssembleRecord(string ids) { int[] idsArr = Tools.SpitIntArrary(ids); if (idsArr.Length <= 0) { return ToResponse(ApiResult.Error($"删除失败Id 不能为空")); } var response = _OutAssembleRecordService.Delete(idsArr); return ToResponse(response); } } }