using Microsoft.AspNetCore.Mvc; using ZR.Admin.WebApi.Extensions; using ZR.Admin.WebApi.Filters; using ZR.Model.MES.wms; using ZR.Model.MES.wms.Dto; using ZR.Service.mes.wms.IService; //创建时间:2024-05-13 namespace ZR.Admin.WebApi.Controllers { /// /// 毛坯库存库存变动记录表 /// [Verify] [Route("/mes/wm/WmBlankRecord")] public class WmBlankRecordController : BaseController { /// /// 毛坯库存库存变动记录表接口 /// private readonly IWmBlankRecordService _WmBlankRecordService; public WmBlankRecordController(IWmBlankRecordService WmBlankRecordService) { _WmBlankRecordService = WmBlankRecordService; } /// /// 查询毛坯库存库存变动记录表列表 /// /// /// [HttpGet("list")] [ActionPermissionFilter(Permission = "business:wmblankrecord:list")] public IActionResult QueryWmBlankRecord([FromQuery] WmBlankRecordQueryDto parm) { var response = _WmBlankRecordService.GetList(parm); return SUCCESS(response); } /// /// 查询毛坯库存库存变动记录表详情 /// /// /// [HttpGet("{Id}")] [ActionPermissionFilter(Permission = "business:wmblankrecord:query")] public IActionResult GetWmBlankRecord(string Id) { var response = _WmBlankRecordService.GetInfo(Id); var info = response.Adapt(); return SUCCESS(info); } /// /// 添加毛坯库存库存变动记录表 /// /// [HttpPost] [ActionPermissionFilter(Permission = "business:wmblankrecord:add")] [Log(Title = "毛坯库存库存变动记录表", BusinessType = BusinessType.INSERT)] public IActionResult AddWmBlankRecord([FromBody] WmBlankRecordDto parm) { var modal = parm.Adapt().ToCreate(HttpContext); var response = _WmBlankRecordService.AddWmBlankRecord(modal); return SUCCESS(response); } /// /// 1.增加库存(入库) /// /// 库存id /// 毛坯号 /// 变动量 /// 入库/出库时间 /// 备注 /// [HttpGet("add_inventory")] public IActionResult AddInventory( string fkBlankInventoryId, string blankNum, int changeQuantity, string remark, DateTime? actionTime ) { try { if (string.IsNullOrEmpty(fkBlankInventoryId)) { return ToResponse(new ApiResult(500, "库存id为空!", "库存id为空!")); } if (string.IsNullOrEmpty(blankNum)) { return ToResponse(new ApiResult(500, "毛坯号为空!", "毛坯号为空!")); } var response = _WmBlankRecordService.AddInventory( fkBlankInventoryId, blankNum, changeQuantity, HttpContext.GetName(), remark, actionTime ); return SUCCESS(response); } catch (Exception ex) { return ToResponse(new ApiResult(500, ex.Message, "添加记录失败")); } } /// /// 2.减少库存(出库) /// /// 库存id /// 毛坯号 /// 变动量 /// 操作时间(出库时间) /// 备注 /// [HttpGet("delete_inventory")] public IActionResult DeleteInventory( string fkBlankInventoryId, string blankNum, int changeQuantity, string remark, DateTime? actionTime ) { try { if (string.IsNullOrEmpty(fkBlankInventoryId)) { return ToResponse(new ApiResult(500, "库存id为空!", "库存id为空!")); } if (string.IsNullOrEmpty(blankNum)) { return ToResponse(new ApiResult(500, "毛坯号为空!", "毛坯号为空!")); } var response = _WmBlankRecordService.DeleteInventory( fkBlankInventoryId, blankNum, changeQuantity, HttpContext.GetName(), remark, actionTime ); return SUCCESS(response); } catch (Exception ex) { return ToResponse(new ApiResult(500, ex.Message, "添加记录失败")); } } /// /// 更新毛坯库存库存变动记录表 /// /// [HttpPut] [ActionPermissionFilter(Permission = "business:wmblankrecord:edit")] [Log(Title = "毛坯库存库存变动记录表", BusinessType = BusinessType.UPDATE)] public IActionResult UpdateWmBlankRecord([FromBody] WmBlankRecordDto parm) { var modal = parm.Adapt().ToUpdate(HttpContext); var response = _WmBlankRecordService.UpdateWmBlankRecord(modal); return ToResponse(response); } /// /// 删除毛坯库存库存变动记录表 /// /// [HttpDelete("{ids}")] [ActionPermissionFilter(Permission = "business:wmblankrecord:delete")] [Log(Title = "毛坯库存库存变动记录表", BusinessType = BusinessType.DELETE)] public IActionResult DeleteWmBlankRecord(string ids) { string[] idsArr = ids.Split(','); if (idsArr.Length <= 0) { return ToResponse(ApiResult.Error($"删除失败Id 不能为空")); } var response = _WmBlankRecordService.Delete(idsArr); return ToResponse(response); } } }