feat: 增加LG/TCS-AGV接口并完善物料校验与Function逻辑

This commit is contained in:
XingCheng3
2026-07-16 16:47:45 +08:00
parent 7303ddde9a
commit 8e44e11248
74 changed files with 4324 additions and 1091 deletions

View File

@@ -1,4 +1,4 @@
using DataLinkMesWork;
using DataLinkMesWork;
using MesServerWork;
using MisDataFunDll;
using MisDataSaveDate.MOM;
@@ -24,6 +24,17 @@ namespace WebApi
{
public class CALL_Inerface_DataHandle
{
private static bool TryCheckProcessReportAllowed(string opName, string engineID, string orderForm, string reqType)
{
DataTable isSendDT = MisDataFun.IOT_ReqData_UpLoad_IsSend(opName, orderForm, reqType, engineID);
if (isSendDT.Rows[0]["result"].ToString() != "1")
{
SaveMesLog($"工序{reqType}", isSendDT.Rows[0]["msg"].ToString(), MesLogType.ERROR);
return false;
}
return true;
}
/// <summary>
/// 开工(工序)
/// </summary>
@@ -32,19 +43,17 @@ namespace WebApi
/// <param name="OrderForm"></param>
public static void CALL_Inerface_JobStart(string OpName, string EngineID, string OrderForm)
{
DataTable IsSendDT = MisDataFun.IOT_ReqData_UpLoad_IsSend(OpName, OrderForm, "工");
if (IsSendDT.Rows[0]["result"].ToString() != "1")
if (!TryCheckProcessReportAllowed(OpName, EngineID, OrderForm, "工"))
{
SaveMesLog("工序完工", IsSendDT.Rows[0]["msg"].ToString(), MesLogType.ERROR);
return;
}
//查询工单ID、任务ID、工序ID
var param = new SqlParameter[] {
new SqlParameter("@订单号",OrderForm),
new SqlParameter("@工序号",OpName),
new SqlParameter("@工件编号",EngineID)
};
new SqlParameter("@订单号",OrderForm),
new SqlParameter("@工序号",OpName),
new SqlParameter("@工件编号",EngineID)
};
DataLinkMesWork2.DataAccess2.ExecuteStoredProcedure("CallWebApi_FactoryMes_JobStart", ref param, out DataTable dt, out string errorMessage);
if (dt.Rows.Count > 0)
@@ -101,19 +110,17 @@ namespace WebApi
/// <param name="OrderForm"></param>
public static void CALL_Inerface_JobFinished(string OpName, string EngineID, string OrderForm)
{
DataTable IsSendDT = MisDataFun.IOT_ReqData_UpLoad_IsSend(OpName, OrderForm, "完工");
if (IsSendDT.Rows[0]["result"].ToString() != "1")
if (!TryCheckProcessReportAllowed(OpName, EngineID, OrderForm, "完工"))
{
SaveMesLog("工序完工", IsSendDT.Rows[0]["msg"].ToString(), MesLogType.ERROR);
return;
}
//查询工单ID、任务ID、工序ID
var param = new SqlParameter[] {
new SqlParameter("@订单号",OrderForm),
new SqlParameter("@工序号",OpName),
new SqlParameter("@工件编号",EngineID)
};
new SqlParameter("@订单号",OrderForm),
new SqlParameter("@工序号",OpName),
new SqlParameter("@工件编号",EngineID)
};
//DataAccess.ExecuteStoredProcedure("CallWebApi_FactoryMes_JobFinished", ref param, out DataSet ds);
DataLinkMesWork2.DataAccess2.ExecuteStoredProcedure("CallWebApi_FactoryMes_JobFinished", ref param, out DataSet ds, out string errorMessage);
//a.[订单ID],[任务ID],[工序ID],[工序名称],1 as 完工数量,@开工时间 as 开工时间,@结束时间 as 结束时间,@节拍 as 节拍,@操作时间 as 最后修改时间
@@ -283,6 +290,7 @@ namespace WebApi
orderID = dt.Rows[0]["订单ID"].ToString();
taskID = dt.Rows[0]["任务ID"].ToString();
}
// 非工厂下发的订单产品,不上传报警
if (string.IsNullOrEmpty(orderID) || string.IsNullOrEmpty(taskID)) return;
@@ -567,6 +575,15 @@ namespace WebApi
}
}
/// <summary>
/// 物料转序
/// </summary>
/// <param name="startPositionCode">起始位置编号</param>
/// <param name="endPositionCode">终点位置编号</param>
/// <param name="dataid">派工任务id</param>
/// <param name="moveTaskType">搬运类型1搬运容器2搬运货架</param>
/// <param name="vehicleStatus">载具类型0-空1-满</param>
/// <returns>返回调用结果 JObject包含 code 和 message</returns>
/// <summary>
/// 物料转序
/// </summary>
@@ -940,3 +957,4 @@ namespace WebApi
//#endregion
}
}