From 4fa3f2b7d70af1539cf2731d7c54cc9769b0e14d Mon Sep 17 00:00:00 2001
From: zyf <1071160500@qq.com>
Date: 星期五, 15 十一月 2024 09:37:00 +0800
Subject: [PATCH] 委外变更单更新开工状态
---
MES.Service/service/BasicData/ProductionOrderManager.cs | 59 ++++++++++++++++++++++++++++++++++++++++++++++++++++++-----
1 files changed, 54 insertions(+), 5 deletions(-)
diff --git a/MES.Service/service/BasicData/ProductionOrderManager.cs b/MES.Service/service/BasicData/ProductionOrderManager.cs
index c46462b..42349c4 100644
--- a/MES.Service/service/BasicData/ProductionOrderManager.cs
+++ b/MES.Service/service/BasicData/ProductionOrderManager.cs
@@ -1,8 +1,11 @@
-锘縰sing System.Globalization;
+锘縰sing System.Data;
+using System.Globalization;
using MES.Service.DB;
using MES.Service.Dto.webApi;
using MES.Service.Modes;
using SqlSugar;
+using static Microsoft.EntityFrameworkCore.DbLoggerCategory;
+using DbType = System.Data.DbType;
namespace MES.Service.service.BasicData;
@@ -35,7 +38,7 @@
return UpdateData(db, mesRohIn, mesRohInDatas) ? 1 : 0;
case "2":
case "4":
- return SaveOrUpdateData(db, mesRohIn, mesRohInDatas)
+ return SaveOrUpdateData(db, mesRohIn, mesRohInDatas, erpProductionOrderDto.Type)
? 1
: 0;
default:
@@ -60,7 +63,7 @@
// 鎻掑叆鎴栨洿鏂版暟鎹殑鏂规硶
private bool SaveOrUpdateData(SqlSugarScope db, ProductionOrder mesRohIn,
- List<ProductionOrderSub> mesRohInDatas)
+ List<ProductionOrderSub> mesRohInDatas,string type)
{
if (mesRohIn.Id != null) base.DeleteById(mesRohIn.Id);
@@ -70,7 +73,52 @@
var orUpdate = base.Insert(mesRohIn);
var baOrUpdate = _productionOrderSubManager.InsertRange(mesRohInDatas);
- if (orUpdate && baOrUpdate) return true;
+ if (orUpdate && baOrUpdate)
+ {
+ if ("4".Equals(type))
+ {
+ //璋冪敤瀛樺偍杩囩▼
+ try
+ {
+ // 瀹氫箟杈撳嚭鍙傛暟
+ var outputResult = new SugarParameter("C_RESULT", null,
+ DbType.Int32, ParameterDirection.Output,
+ 4000);
+
+ var outputMessage = new SugarParameter("MSG", null, DbType.String,
+ ParameterDirection.Output, 4000);
+
+ // 瀹氫箟杈撳叆鍙傛暟
+ var parameters = new List<SugarParameter>
+ {
+
+ new("P_ID",mesRohIn.ErpId , DbType.String,
+ ParameterDirection.Input),
+ outputResult,
+ outputMessage
+ };
+
+ // 浣跨敤 SqlSugar 鎵ц瀛樺偍杩囩▼
+ Db.Ado.ExecuteCommand(
+ "BEGIN PRC_MES_WW_UPDATE_BS(:P_ID, :C_RESULT, :MSG); END;",
+ parameters.ToArray());
+
+ // 鑾峰彇杈撳嚭鍙傛暟鐨勫��
+ var resultValue = outputResult.Value?.ToString();
+ var messageValue = outputMessage.Value?.ToString();
+
+ if ("1".Equals(resultValue)) throw new Exception("鏇存柊澶辫触");
+
+ return true;
+ }
+ catch (Exception ex)
+ {
+ throw new Exception(ex.Message);
+ }
+ }
+ return true;
+ }
+
throw new NotImplementedException("鎻掑叆鎴栨洿鏂板け璐�");
}
@@ -143,7 +191,8 @@
// Convert.ToDecimal(erpDto.F_UNW_BaseProperty_jjds),
StockInQty = Convert.ToDecimal(erpDto.FBaseStockInQty),
NoStockInQty = Convert.ToDouble(erpDto.FBaseNoStockInQty),
- StockOwner = erpDto.FInStockOwnerId
+ StockOwner = erpDto.FInStockOwnerId,
+ SUPPLIER = erpDto.FSUPPLIERID
};
var single = base.GetSingle(it => it.ErpId == erpDto.FPPOMID);
--
Gitblit v1.9.3