using MES.Service.Dto.webApi;
|
using MES.Service.Dto.webApi.DeliveryNote;
|
using MES.Service.Dto.webApi.ProductionOrder;
|
using MES.Service.Modes;
|
using MES.Service.Modes.ProductionOrder;
|
using MES.Service.Modes.QcIssueResult;
|
using MES.Service.service;
|
using MES.Service.service.ProductionOrder;
|
using MES.Service.util;
|
using Microsoft.AspNetCore.Mvc;
|
using Newtonsoft.Json;
|
using Newtonsoft.Json.Linq;
|
using System.Diagnostics;
|
using System.Dynamic;
|
|
namespace MESApplication.Controllers.ProductionOrder;
|
|
[ApiController]
|
[Route("api/[controller]")]
|
public class ProductionOrderController : ControllerBase
|
{
|
private readonly MessageCenterManager _manager = new();
|
private readonly ProductionOrderManager m = new();
|
|
private readonly string METHOD = "POST";
|
|
private readonly string TableName = "MES_PRODUCTION_ORDER";
|
|
private readonly string URL = "http://localhost:10054/api/ProductionOrder/";
|
|
/// <summary>
|
/// 获取所有
|
/// </summary>
|
/// <returns></returns>
|
[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("Save")]
|
public ResponseResult Save(ErpProductionOrder erpProductionOrder)
|
{
|
var entity = new MessageCenter();
|
entity.TableName = TableName;
|
entity.Url = URL + "Save";
|
entity.Method = METHOD;
|
entity.Data = JsonConvert.SerializeObject(erpProductionOrder);
|
entity.Status = 1;
|
entity.CreateBy = "PL017";
|
try
|
{
|
dynamic resultInfos = new ExpandoObject();
|
var save = m.Save(erpProductionOrder);
|
resultInfos.tbBillList = save;
|
|
entity.Result = 0;
|
if (save) 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("SaveList")]
|
public ResponseResult SaveList(List<ErpProductionOrder> erpProductionOrder)
|
{
|
var entity = new MessageCenter();
|
entity.TableName = TableName;
|
entity.Url = URL + "SaveList";
|
entity.Method = METHOD;
|
entity.Data = JsonConvert.SerializeObject(erpProductionOrder);
|
entity.Status = 1;
|
entity.CreateBy = "PL017";
|
try
|
{
|
dynamic resultInfos = new ExpandoObject();
|
var save = m.SaveList(erpProductionOrder);
|
resultInfos.tbBillList = save;
|
|
entity.Result = 0;
|
if (save) 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("GetFileUrl")]
|
public IActionResult StartGetUrl(string imageUrl)
|
{
|
|
try
|
{
|
// 调用 QcIssueResultManager 中的 GetProcessNo 方法来启动钉钉工作流实例
|
|
//string result = m.GetSpaceId();
|
//ResultDataAndSpaceId resultData = JsonConvert.DeserializeObject<ResultDataAndSpaceId>(result);
|
//string SpaceId = resultData.Result.SpaceId;
|
//string result = m.GetPermissions();
|
|
//string jsonPart = result.Substring(result.IndexOf("{"));
|
//Debug.WriteLine(jsonPart);
|
//JObject jsonObject = JObject.Parse(jsonPart);
|
|
//// 提取instanceId的值
|
//string instanceId = jsonObject["InstanceId"].ToString();
|
|
//dynamic resultInfos = new ExpandoObject();
|
//string ProcessNo = instanceId;
|
////var save = m.SaveProcessNo(ReleaseNo, instanceId);
|
////resultInfos.tbBillList = save;
|
|
Debug.WriteLine(imageUrl);
|
string result = m.GetProductionDetail(imageUrl);
|
Debug.WriteLine(result);
|
return Ok(result);
|
}
|
catch (Exception ex)
|
{
|
// 捕获异常并返回错误信息
|
return StatusCode(500, $"启动钉钉工作流实例失败: {ex.Message}");
|
}
|
|
}
|
|
}
|