This commit is contained in:
liangjunyu
2025-09-11 15:36:29 +08:00
parent 51428a1dc7
commit c75d6d3f57

View File

@@ -17,6 +17,7 @@ using RB_MES_APICore.Models.Cloud;
using RB_MES_APICore.Models.Pangu;
using System.Data;
using System.Data.Entity;
using System.Diagnostics;
using System.Globalization;
using System.Reflection;
using System.Text;
@@ -200,7 +201,8 @@ namespace RB_MES_API.Controllers
{
string sform = string.Format(colname + "='{0}'", v);
usql += usql == "" ? sform : "," + sform;
};
}
;
}
}
if (usql != "")
@@ -509,7 +511,7 @@ namespace RB_MES_API.Controllers
//LogHelper.WriteLog(string.Format("UpdatePRDMO接口处理发生错误\"{0}\"接收到的数据是:\"{1}", reason, data));
//throw;
}
E:
E:
result = JsonConvert.SerializeObject(breakData);
_shareController._SqlloggerInvoke(2, DocType, !breakData.Status ? result : "", data, breakData.Status, guid);
@@ -672,7 +674,7 @@ namespace RB_MES_API.Controllers
//LogHelper.WriteLog(string.Format("UpdatePRDMO接口处理发生错误\"{0}\"接收到的数据是:\"{1}", reason, data));
//throw;
}
E:
E:
result = JsonConvert.SerializeObject(breakData);
_shareController._SqlloggerInvoke(2, DocType, !breakData.Status ? result : "", data, breakData.Status, guid);
return result;
@@ -1381,7 +1383,7 @@ namespace RB_MES_API.Controllers
else { mess.AppendLine(reason); }
breakData.Status = isok;
breakData.Message = isok ? "" : mess.ToString();
E:
E:
result = JsonConvert.SerializeObject(breakData);
_shareController._SqlloggerInvoke(2, DocType, !breakData.Status ? result : "", data, breakData.Status, guid);
return result;
@@ -1903,11 +1905,22 @@ namespace RB_MES_API.Controllers
return JsonConvert.SerializeObject(breakData);
}
//if (!CheckQUEUEIDHasPut(DocType, data, ref reason))
//{
// breakData.Message = reason;
// return JsonConvert.SerializeObject(breakData);
//}
Stopwatch checkQueueIdHasFlagWatch = new Stopwatch();
// 开始计时
checkQueueIdHasFlagWatch.Start();
var checkQueueIdHasFlag = !CheckQUEUEIDHasPut(DocType, data, ref reason);
// 停止计时
checkQueueIdHasFlagWatch.Stop();
// 获取执行时间
LogHelper.WriteLog($"检测是否已经推送过或者正在推送中 执行时间: {checkQueueIdHasFlagWatch.Elapsed.TotalMilliseconds} 毫秒");
if (checkQueueIdHasFlag)
{
breakData.Message = reason;
return JsonConvert.SerializeObject(breakData);
}
//先固定好时间
string guid = Guid.NewGuid().ToString("B");
@@ -2193,9 +2206,9 @@ namespace RB_MES_API.Controllers
string line = ex.StackTrace.Substring(ex.StackTrace.IndexOf("行号"), ex.StackTrace.Length - ex.StackTrace.IndexOf("行号"));
breakData.Message = string.Format("错误在PostAsync{0}发生:{1}", line, ex.Message);
}
//LogHelper.WriteLog(string.Format("完成ERP推送{0}", parm.DocType));
//LogHelper.WriteLog(string.Format("完成ERP推送{0}", parm.DocType));
E:
E:
string result = JsonConvert.SerializeObject(breakData);
_shareController._SqlloggerInvoke(2, DocType, !breakData.Status ? result : "", data, breakData.Status, guid);
return result;
@@ -7648,6 +7661,10 @@ namespace RB_MES_API.Controllers
/// <returns></returns>
private async Task<BreakData> SaveBatchPickMtrlAsync(FormIDType formIDType, string data, int fid, int childtypeid)
{
Stopwatch stopwatchAll = new Stopwatch();
// 开始计时
stopwatchAll.Start();
BreakData breakData = new BreakData() { Status = false, DataSet = JsonConvert.DeserializeObject(data) };
string reason = string.Empty;
//应当就ERP生产用料清单号、行号查询源单并校验
@@ -7659,8 +7676,17 @@ namespace RB_MES_API.Controllers
if (mes_POInStocks != null)
{
breakData.Message = string.Empty;
Stopwatch ExistsDoubleQueidWatch = new Stopwatch();
// 开始计时
ExistsDoubleQueidWatch.Start();
//校验是否有重复推单
breakData = ExistsDoubleQueid(mes_POInStocks, formIDType.FDocType);
// 停止计时
ExistsDoubleQueidWatch.Stop();
// 获取执行时间
LogHelper.WriteLog($"校验是否有重复推单执行时间: {ExistsDoubleQueidWatch.Elapsed.TotalMilliseconds} 毫秒");
if (breakData.Status || !string.IsNullOrEmpty(breakData.Message.ToString()))
{
return breakData;
@@ -7684,12 +7710,23 @@ namespace RB_MES_API.Controllers
breakData.Message = "此接口的请求条件未配置";
return breakData;
}
Stopwatch sourcebillsWatch = new Stopwatch();
// 开始计时
sourcebillsWatch.Start();
//把源单信息都取出来
CloudBillQuery billQuery = questobj.FirstOrDefault();
string fk = billQuery.FFieldKeys.Replace("@defaultorgid", LocalStaticRequest.DefaultOrgID.ToString()).Replace("@defaultorgno", LocalStaticRequest.DefaultOrg);
string fs = billQuery.FFiledString.Replace("@defaultorgid", LocalStaticRequest.DefaultOrgID.ToString()).Replace("@defaultorgno", LocalStaticRequest.DefaultOrg);
//string sourcebills = await _chiledselect.GetCustomRequestTableAsync(billQuery.FFieldKeys, billQuery.FFiledString, billQuery.FOrderString, keyValues);
string sourcebills = GetCustomRequestTableAsync(fk, fs, billQuery.FOrderString, keyValues, ref reason);
// 停止计时
sourcebillsWatch.Stop();
// 获取执行时间
LogHelper.WriteLog($"获取源单执行时间: {sourcebillsWatch.Elapsed.TotalMilliseconds} 毫秒");
if (!string.IsNullOrWhiteSpace(reason))
{
breakData.Message = reason;
@@ -7698,9 +7735,19 @@ namespace RB_MES_API.Controllers
{
//推送数据
var dsb = await _shareController.GetAPIList<DataSaveBatch>();
DataSaveBatch? dataSave = dsb.Where(s => s.GetForm.FFunctionID == fid && s.FDocTypeID == childtypeid)
.FirstOrDefault();
DataSaveBatch? dataSave = dsb.Where(s => s.GetForm.FFunctionID == fid && s.FDocTypeID == childtypeid).FirstOrDefault();
Stopwatch dataConvertWatch = new Stopwatch();
// 开始计时
dataConvertWatch.Start();
List<PrdPpbomEntry> purchaseOrders = _shareController.DataConvertClass<PrdPpbomEntry>(sourcebills, ref reason);
// 停止计时
dataConvertWatch.Stop();
// 获取执行时间
LogHelper.WriteLog($"数据转换执行时间: {dataConvertWatch.Elapsed.TotalMilliseconds} 毫秒");
if (!string.IsNullOrWhiteSpace(reason))
{
breakData.Message = reason;
@@ -7765,6 +7812,13 @@ namespace RB_MES_API.Controllers
{
breakData.Message = string.IsNullOrEmpty(reason) ? "输入数据转换出错" : reason;
}
// 停止计时
stopwatchAll.Stop();
// 获取执行时间
TimeSpan elapsed = stopwatchAll.Elapsed;
LogHelper.WriteLog($"总执行时间: {elapsed.TotalMilliseconds} 毫秒");
return breakData;
}
@@ -8402,7 +8456,7 @@ namespace RB_MES_API.Controllers
}
list = _shareController.DataConvertClass<PPBOMEntryStr>(head, ref reason);
}
E:
E:
return list;
}/// <summary>
@@ -8454,7 +8508,7 @@ namespace RB_MES_API.Controllers
}
list = _shareController.DataConvertClass<PPBOMEntryStr>(head, ref reason);
}
E:
E:
return list;
}
/// <summary>