using AngleSharp.Text;
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.Http;
using Microsoft.AspNetCore.Mvc;
using Microsoft.EntityFrameworkCore.Metadata.Internal;
using System.Dynamic;
namespace MESApplication.Controllers.Warehouse
{
[Route("api/[controller]")]
[ApiController]
public class WorkflowController : ControllerBase
{
private readonly WorkflowManager m = new();
private readonly MessageCenterManager _manager = new();
private readonly string METHOD = "POST";
private readonly string TableName = "Workflow";
private readonly string URL = "http://localhost:10054/api/Workflow/";
///
///更新实验室测试委托状态
///
///
[HttpPost("TestResult")]
public ResponseResult TestResult(TestResultDto testResultDto)
{
var entity = new MessageCenter();
entity.TableName = TableName;
entity.Url = URL + "TestResult";
entity.Method = METHOD;
entity.Data = Newtonsoft.Json.JsonConvert.SerializeObject(testResultDto);
entity.Status = 1;
entity.CreateBy = "PL017";
try
{
dynamic resultInfos = new ExpandoObject();
var result = m.SetTestResultDto(testResultDto);
resultInfos.tbBillList = result;
entity.Result = 0;
if (result[0].ToBoolean()) entity.Result = 1;
entity.DealWith = 1;
_manager.save(entity);
if (result[0].ToBoolean())
{
return new ResponseResult
{
status = 0,
message = "OK",
data = resultInfos
};
}
else {
return new ResponseResult
{
status = 1,
message = result[1],
data = resultInfos
};
}
}
catch (Exception ex)
{
entity.Result = 0;
entity.DealWith = 0;
entity.ResultData = ex.Message;
_manager.save(entity);
return ResponseResult.ResponseError(ex);
}
}
}
}