using MES.Service.Dto.service;
using MES.Service.Modes;
using MES.Service.service;
using MES.Service.service.Warehouse;
using MES.Service.util;
using Microsoft.AspNetCore.Mvc;
using System.Dynamic;
using System.Threading;
namespace MESApplication.Controllers.Warehouse;
[ApiController]
[Route("api/[controller]")]
public class MesInvItemOutsController : ControllerBase
{
private readonly MesInvItemOutsManager m = new();
private readonly MessageCenterManager _manager = new();
private readonly string METHOD = "POST";
private readonly string TableName = "MesInvItemOuts";
private readonly string URL = "http://localhost:10054/api/MesInvItemOuts/";
///
/// 采购退货申请单
///
///
[HttpPost("ReturnRequest")]
public ResponseResult ReturnRequest(ItemOut oItemOut)
{
var entity = new MessageCenter();
entity.TableName = TableName;
entity.Url = URL + "ReturnRequest";
entity.Method = METHOD;
entity.Data = Newtonsoft.Json.JsonConvert.SerializeObject(oItemOut);
entity.Status = 1;
entity.CreateBy = "PL017";
try
{
dynamic resultInfos = new ExpandoObject();
var result = m.ReturnRequest(oItemOut);
resultInfos.tbBillList = result;
entity.Result = 0;
if (result) entity.Result = 1;
entity.DealWith = 1;
_manager.save(entity);
return new ResponseResult
{
status = 0,
message = "OK",
data = resultInfos
};
}
catch (Exception ex)
{
entity.Result = 0;
entity.DealWith = 0;
entity.ResultData = ex.Message;
_manager.save(entity);
return ResponseResult.ResponseError(ex);
}
}
///
/// 获取所有
///
///
[HttpPost("GetList")]
public ResponseResult GetList()
{
try
{
dynamic resultInfos = new ExpandoObject();
resultInfos.tbBillList = m.GetList();
return new ResponseResult
{
status = 0,
message = "OK",
data = resultInfos
};
}
catch (Exception ex)
{
return ResponseResult.ResponseError(ex);
}
}
///
/// 根据主键获取
///
///
[HttpPost("GetById")]
public ResponseResult GetById(int id)
{
try
{
dynamic resultInfos = new ExpandoObject();
resultInfos.tbBillList = m.GetById(id);
return new ResponseResult
{
status = 0,
message = "OK",
data = resultInfos
};
}
catch (Exception ex)
{
return ResponseResult.ResponseError(ex);
}
}
///
/// 根据主键删除
///
///
[HttpPost("DeleteByIds")]
public ResponseResult DeleteByIds([FromBody] object[] ids)
{
try
{
dynamic resultInfos = new ExpandoObject();
resultInfos.tbBillList = m.DeleteByIds(ids);
return new ResponseResult
{
status = 0,
message = "OK",
data = resultInfos
};
}
catch (Exception ex)
{
return ResponseResult.ResponseError(ex);
}
}
///
/// 添加
///
///
[HttpPost("Insert")]
public ResponseResult Add([FromBody] MesInvItemOuts data)
{
try
{
dynamic resultInfos = new ExpandoObject();
resultInfos.tbBillList = m.Insert(data);
return new ResponseResult
{
status = 0,
message = "OK",
data = resultInfos
};
}
catch (Exception ex)
{
return ResponseResult.ResponseError(ex);
}
}
///
/// 添加返回自增
///
///
[HttpPost("InsertReturnIdentity")]
public ResponseResult InsertReturnIdentity([FromBody] MesInvItemOuts data)
{
try
{
dynamic resultInfos = new ExpandoObject();
resultInfos.tbBillList = m.InsertReturnIdentity(data);
return new ResponseResult
{
status = 0,
message = "OK",
data = resultInfos
};
}
catch (Exception ex)
{
return ResponseResult.ResponseError(ex);
}
}
///
/// 修改
///
///
[HttpPost("Update")]
public ResponseResult Update([FromBody] MesInvItemOuts data)
{
try
{
dynamic resultInfos = new ExpandoObject();
resultInfos.tbBillList = m.Update(data);
return new ResponseResult
{
status = 0,
message = "OK",
data = resultInfos
};
}
catch (Exception ex)
{
return ResponseResult.ResponseError(ex);
}
}
}