From 26fe0aa7cf788c49e072e732a0d6de06f1abcc0b Mon Sep 17 00:00:00 2001
From: cnf <3283105747@qq.com>
Date: 星期四, 06 十一月 2025 09:13:20 +0800
Subject: [PATCH] 自动备料在排产审核时触发
---
WebApi/Gs.Wom/Service/WompbaGxManager.cs | 117 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 115 insertions(+), 2 deletions(-)
diff --git a/WebApi/Gs.Wom/Service/WompbaGxManager.cs b/WebApi/Gs.Wom/Service/WompbaGxManager.cs
index 90c8735..184e9ca 100644
--- a/WebApi/Gs.Wom/Service/WompbaGxManager.cs
+++ b/WebApi/Gs.Wom/Service/WompbaGxManager.cs
@@ -143,6 +143,7 @@
Guid? guid = model.guid; //涓婚敭
string bz = model.bz; //澶囨敞
string cjId = model.cjId; //杞﹂棿
+ string chkOut = model.chkOut;
string cxId = ""; //浜х嚎,鐢ㄤ笉鍒颁簡
string jhrs = ""; //璁″垝浜烘暟,鐢ㄤ笉鍒颁簡
var _sb = new StringBuilder();
@@ -192,7 +193,8 @@
new("@inCxId", cxId),
new("@inJhrs", jhrs),
new("@inEdtUserGuid", _userGuid),
- new("@inLineList", _sb.ToString())
+ new("@inLineList", _sb.ToString()),
+ new("@inP1",chkOut)
};
parameters[0].Direction = ParameterDirection.Output;
parameters[1].Direction = ParameterDirection.Output;
@@ -496,6 +498,7 @@
public ReturnDto<ExpandoObject> EditModelSubmit([FromBody] dynamic mode)
{
string _guid = mode.guid;
+ string chkOut = mode.chkOut;
dynamic m = new ExpandoObject();
m.outSum = -1;
m.outMsg = "";
@@ -514,7 +517,7 @@
new("@inEdtUserGuid", _userGuid),
new("@inOrderGuid", _guid),
new("@inFieldValue", 1),
- new("@in1", ""),
+ new("@in1", chkOut),
new("@in2", "")
};
parameters[0].Direction = ParameterDirection.Output;
@@ -598,4 +601,114 @@
}
return ReturnDto<dynamic>.QuickReturn(m, ReturnCode.Success, "鎿嶄綔鎴愬姛锛�");
}
+
+
+
+ /// <summary>
+ /// 鎵归噺澶勭悊鏄庣粏鏁版嵁
+ /// </summary>
+ /// <param name="model"></param>
+ /// <returns></returns>
+ [RequestMethod(RequestMethods.POST)]
+ public ReturnDto<ExpandoObject> BatchProcessDetails([FromBody] dynamic model)
+ {
+ dynamic result = new ExpandoObject();
+ result.outSum = 0;
+ result.outMsg = "";
+
+ try
+ {
+ // 鑾峰彇璇锋眰鍙傛暟
+ string operatorGuid = model.operatorGuid?.ToString() ?? "";
+ string operationType = model.operationType?.ToString() ?? "BatchProcess";
+ var selectedDetails = model.selectedDetails;
+
+ if (selectedDetails == null)
+ {
+ result.outMsg = "鏈帴鏀跺埌瑕佸鐞嗙殑鏄庣粏鏁版嵁锛�";
+ return ReturnDto<ExpandoObject>.QuickReturn(result, ReturnCode.Default, result.outMsg);
+ }
+
+ // 鏋勫缓鏄庣粏鏁版嵁瀛楃涓诧紝鐢ㄤ簬浼犻�掔粰瀛樺偍杩囩▼
+ var _sb = new StringBuilder();
+ var _split = "|";
+ int processCount = 0;
+
+ foreach (var detail in selectedDetails)
+ {
+ string detailGuid = detail.guid?.ToString() ?? "";
+ string daa002 = detail.daa002?.ToString() ?? "";
+ string daa003 = detail.daa003?.ToString() ?? "";
+ string daa005 = detail.daa005?.ToString() ?? "";
+ string daa010 = detail.daa010?.ToString() ?? "";
+
+ // 楠岃瘉蹇呰瀛楁
+ if (string.IsNullOrEmpty(detailGuid))
+ continue;
+
+ // 鏋勫缓鏄庣粏琛屾暟鎹瓧绗︿覆
+ var _line = detailGuid + _split
+ + daa002 + _split
+ + daa003 + _split
+ + daa005 + _split
+ + daa010 + _split
+ + operationType + _split
+ + _userCode + _split
+ + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
+
+ if (_sb.Length > 0)
+ _sb.Append("~");
+ _sb.Append(_line);
+ processCount++;
+ }
+
+ if (processCount == 0)
+ {
+ result.outMsg = "娌℃湁鏈夋晥鐨勬槑缁嗘暟鎹渶瑕佸鐞嗭紒";
+ return ReturnDto<ExpandoObject>.QuickReturn(result, ReturnCode.Default, result.outMsg);
+ }
+
+ // 璋冪敤瀛樺偍杩囩▼杩涜鎵归噺澶勭悊
+ SqlParameter[] parameters =
+ {
+ new("@inOperatorGuid", operatorGuid),
+ new("@inOperationType", operationType),
+ new("@inDetailsData", _sb.ToString()),
+ new("@inUserCode", _userCode),
+ new("@inUserGuid", _userGuid),
+ new("@inOrgFids", _orgFids),
+ new("@outSum", SqlDbType.Int) { Direction = ParameterDirection.Output },
+ new("@outMsg", SqlDbType.NVarChar, 500) { Direction = ParameterDirection.Output }
+ };
+
+ var dset = new DataSet();
+ dset = DbHelperSQL.RunProcedure("prc_wom_pbagx_batch_process", parameters, "0");
+
+ // 鑾峰彇杈撳嚭鍙傛暟
+ int outSum = Convert.ToInt32(parameters[6].Value ?? 0);
+ string outMsg = parameters[7].Value?.ToString() ?? "";
+
+ result.outSum = outSum;
+ result.outMsg = outMsg;
+
+ if (outSum > 0)
+ {
+
+ return ReturnDto<ExpandoObject>.QuickReturn(result, ReturnCode.Success, outMsg);
+ }
+ else
+ {
+
+ return ReturnDto<ExpandoObject>.QuickReturn(result, ReturnCode.Default, outMsg);
+ }
+ }
+ catch (Exception ex)
+ {
+ result.outMsg = "鎵归噺澶勭悊鏄庣粏鏃跺彂鐢熷紓甯革細" + ex.Message;
+ return ReturnDto<ExpandoObject>.QuickReturn(result, ReturnCode.Exception, result.outMsg);
+ }
+ }
+
+
+
}
\ No newline at end of file
--
Gitblit v1.9.3